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

   array_diff_key - вычисление расхождения в массивах, сравнивая ключи
Функция array_diff_key() сравнивает ключи двух массивов и выводит ключи и значения первого массива с ключами которых нет во втором массиве.  Пример использования: $a = array (1=>'кошка',2=>'мышка',4=>'сапог',6=>'пряник'); $b = array (1=>'кошка',3=>'пряник',4=>'кино',5=>'стакан'); $arr = array_diff_key ($a, $b); print_r($arr); Array ( [2] => мышка [6] =>…
  2017-09-01 22:49:18 | Категория: PHP
   Оператор тождественного сравнения ===
Рассмотрим следующий пример: $a=1; $b='01'; if($a==$b) echo "При использовании == (1 пример)<br>"; if($a===$b) echo "При использовании === (2 пример)<br>"; При использовании == (1 пример) В данном примере переменная $a представляет собой число, а $b — строку. Как числа переменные $a $b равны, но оператор === не только сравнивает два выражения, но также их типы, поэтому во втором примере переменные $a $b не…
  2017-08-29 19:38:58 | Категория: PHP
   MUSESCORE — СВОБОДНЫЙ WYSIWYG-РЕДАКТОР МУЗЫКАЛЬНЫХ ПАРТИТУР ДЛЯ LINUX
MuseScore — свободный WYSIWYG-редактор музыкальных партитур для Linux, распространяемый под лицензией GNU GPL.   Возможности: WYSIWYG, ноты вводятся на «виртуальном листе партитуры» неограниченное число нотных станов до 4 голосов на нотный стан лёгкий и быстрый ввод нот с помощью мыши, компьютерной или midi-клавиатуры интегрированный секвенсер и программный синтезатор FluidSynth импорт и экспорт MusicXml и Standard MIDI File…
  2017-08-07 08:51:08 | Категория: Разное
   bcsqrt - получает квадратный корень числа с произвольной точностью
Функция bcsqrt() получает квадратный корень числа с произвольной точностью. Пример использования: $a = 23.458; echo bcsqrt($a,3); ///…
  2017-09-10 17:21:55 | Категория: PHP
   УСТАНАВЛИВАЕМ CMS JOOMLA 2.* В UBUNTU 14.04
Joomla представляет собой бесплатную систему для создания веб-сайтов.  Это проект с открытым исходным кодом, который, как и большинство подобных проектов, не стоит на месте. Он очень успешно развивается, в течение вот уже семи лет, и пользуется популярностью у миллионов пользователей по всему миру.   CMS Joomla! включает в себя различные инструменты для разработки веб-сайта. Важной особенностью системы…
  2017-08-11 21:42:49 | Категория: Сервер

Вверх