Установи Linux! Стань свободным!
Онлайн всего: 1 | Посетители: 0 | Боты: 1
Дата 15.10.2026 Время: 01:12
Ваш IP: 216.73.216.42
Загрузка сервера: 0.74
old.ubuntu-desktop.ru - Цикл foreach - PHP    Главная > Веб-программирование > PHP

Цикл foreach

Цикл foreach предоставляет простой способ перебора массивов. Foreach работает только с массивами и объектами, и будет генерировать ошибку при попытке использования с переменными других типов или не инициализированными переменными.

Первый вид синтаксиса цикла foreach:

foreach ($array as $value) {
инструкции
}

Цикл foreach будет перебирать заданный массив — $array . На каждой итерации значение текущего элемента присваивается переменной $value.

Цикл foreach выполняет обход и чтение всех элементов массива, пока не будет достигнут последний.

Пример использования:

$masiv = array(1, 2, 3, 4, 5);
foreach ($masiv as $i) {
echo $i;
}

12345

Второй вид синтаксиса foreach:

foreach ($array as $key => $value) {
  инструкции
}

Теперь при использовании второго вида синтаксиса на каждой итерации дополнительно присваивается значение текущего ключа переменной $key.

Пример использования:

$masiv = array(1, 2, 3, 4, 5);
foreach ($masiv as $key => $i) {
echo "[$key] = ", $i, "<br>";
}

[0] = 1
[1] = 2
[2] = 3
[3] = 4
[4] = 5

Так же имеется возможность обхода массива массивов с распаковкой вложенного массива в переменные цикла, передав list() в качестве значения.

Пример:

$masiv = array([1, 2],[3, 4]);
foreach ($masiv as list($a, $b)) {
echo "A: ".$a."; B: ".$b." <br>";

A: 1; B: 2
A: 3; B: 4

Для того, чтобы напрямую изменять элементы массива внутри цикла, переменной $value должен предшествовать знак &. В этом случае значение будет присвоено по ссылке.

$masiv = array(1, 2, 3, 4, 5);
foreach ($masiv as &$i) {
$i = $i*10; // массив $i сейчас таков: array(10, 20, 30, 40, 50)
echo $i;
unset($i); // разорвать ссылку на последний элемент
}

1020304050

Ссылка на последний элемент массива остается даже после того, как оператор foreach завершил работу. Поэтому рекомендуется удалять ее с помощью функции unset().

Рейтинг
<< Предыдущая статьяСледующая статья >>
  2017-08-11 12:09:21 | liman28 | Категория: PHP | Просмотров: 57
Комментарии
E-mail (не будет опубликован)
Имя
Комментарий
Введите число с картинки:     
Случайные статьи

   NAUTILUS-IMAGE-CONVERTER — РАСШИРЕНИЕ NAUTILUS ДЛЯ МАССОВОГО ИЗМЕНЕНИЯ РАЗМЕРА И ПОВОРОТА ИЗОБРАЖЕНИЙ
nautilus-image-converter — расширение Nautilus для массового изменения размера и поворота изображений Пакет добавляет пункты «Масштабировать изображения…» и «Rotate images…» (поворот изображений) в контекстное меню для всех изображений. Основные особенности программы: Простота использования, нет необходимости использования сторонней программы Поддержка огромного кол-ва графических…
  2017-08-10 20:32:38 | Категория: Ubuntu
   МЕНЕДЖЕР XFE (X FILE EXPLORER) — БЫСТРЫЙ И НЕ ЗАВИСЯЩИЙ ОТ РАБОЧЕГО ОКРУЖЕНИЯ МЕНЕДЖЕР
Менеджер Xfe (X File Explorer) — быстрый и не зависящий от рабочего окружения менеджер. Главным достоинством этой программы является скорость работы, минимальные системные требования, простота использования. Программа полностью переведена на русский язык. Xfe понимает файловые ассоциации, умеет монтировать и размонтировать устройства, использовать дерево для смены каталогов, изменять атрибуты файлов, вести…
  2017-08-10 22:25:46 | Категория: Система
   CutePad - текстовый редактор
CutePad - очень простой, компактный и быстрый текстовый редактор, написанный с использованием C++ и Qt. Особенности текстового редактора: Простой и понятный графический интерфейс. Возможность чтения и записи любого текстового документа. Имеется возможность экспортировать документ в формате PDF. Можно вставлять изображения, таблицы, даты и время. Язык интерфейса английский.  Для установки текстового…
  2017-08-31 08:51:58 | Категория: Офис
   str_replace
Функции str_replace() производит замену одних символов в строке другими. Пример использования: $text = "два плюс два = пять"; $text = str_replace("пять", "четыре", $text); echo $text; Результат: два плюс два =…
  2017-08-11 23:31:45 | Категория: PHP
   VENDETTA ONLINE — КОСМИЧЕСКАЯ МНОГОПОЛЬЗОВАТЕЛЬСКАЯ РОЛЕВАЯ ОНЛАЙН ИГРА
Vendetta Online — космическая многопользовательская ролевая онлайн игра. В игре игрок управляет космическим кораблем, воюет с врагами (другими людьми), занимается торговлей, контрабандой и т.д. Управление кораблем Клавиши Q и E повороты корабля вокруг оси, клавиши W и S ускорение и торможение корабля, при помощи мышки производится поворот корабля, F1 — полное описание всех клавиш…
  2017-08-11 14:04:45 | Категория: Игры

Вверх