Установи Linux! Стань свободным!
Онлайн всего: 1 | Посетители: 0 | Боты: 1
Дата 06.11.2026 Время: 04:35
Ваш IP: 216.73.216.149
Загрузка сервера: 0.79
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 (не будет опубликован)
Имя
Комментарий
Введите число с картинки:     
Случайные статьи

   JuK - свободный медиаплеер для KDE
JuK - свободный медиаплеер для KDE, используемый по умолчанию, начиная с KDE 3.2, часть пакета kdemultimedia. JuK поддерживает форматы MP3, Ogg Vorbis, и FLAC. Разработка JuK была начата Скоттом Веллером в 2000 году, в то время он назывался QTagger. В 2002 году, он был перемещён в KDE CVS, где он «вырос» в полноценное аудиоприложение. Он стал частью KDE, начиная с версии 3.2. Обладая возможностями обычного…
  2017-08-25 18:39:19 | Категория: Мультимедиа
   FORSAKEN — ФАНТАСТИЧЕСКИЙ ШУТЕР ОТ ПЕРВОГО ЛИЦА
Описание игрыВ далеком будущем население Земли значительно сократилось. Все виной — тяга к научным экспериментам и поиски вечной молодости. Выжившие покинули планету и живут на орбитальной станции, которая давно превратилась в искусственный спутник Земли. Но находятся смельчаки, которые все еще спускаются на поверхность, чтобы отыскать артефакты, оружие и раздобыть немного металла. Вся планета…
  2017-08-11 14:50:23 | Категория: Игры
   Freecol — игра в духе «Цивилизации»
Freecol — игра в духе «Цивилизации», но действие в ней происходит в колониальной среде. Колонизируйте новые миры, стройте города, торгуйте или сражайтесь с местными жителями и другими европейскими цивилизациями, торгуйте со своей родной страной, пока не будете готовы к сражению за свою независимость! Игра написана на языке программирования Java и работает, как минимум, в Microsoft Windows, Mac OS X (с проблемами), и…
  2017-08-13 10:24:22 | Категория: Игры
   MOUSEPAD АНАЛОГ БЛОКНОТА В WINDOWS
Mousepad — легковесный редактор текста под Linux. Очень похож на Блокнот Windows. Он основан на редакторе Leafpad и почти полностью схож с ним функциональностью. Сейчас Mousepad обладает дополнительной функцией открытия недавно редактируемых файлов (Open Recent). В среде рабочего стола Xfce Mousepad является текстовым редактором, установленным по умолчанию.   Установка Mousepad:   В терминале выполните следующую…
  2017-08-01 07:33:09 | Категория: Офис
   GNOME SCHEDULE — АВТОМАТИЧЕСКОЕ ВЫПОЛНЕНИЕ ЗАДАЧ
Иногда возникает необходимость выполнить определенные задачи автоматически, например отключение компьютера по расписанию. В Linux для этой цели используется приложение crontab, это приложение запускается из терминала и способно выполнять команды и скрипты. Так же есть графический аналог планировщика crontab, это  Gnome Schedule.Программа Gnome Schedule находится в официально репозитории Linux Ubuntu, ее можно установить через…
  2017-08-11 22:58:16 | Категория: Система

Вверх