Установи Linux! Стань свободным!
Онлайн всего: 4 | Посетители: 1 | Боты: 3
Дата 26.09.2026 Время: 15:47
Ваш IP: 216.73.217.83
Загрузка сервера: 0.46
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 (не будет опубликован)
Имя
Комментарий
Введите число с картинки:     
Случайные статьи

   SMPlayer
SMPlayer — свободный медиаплеер для Windows и Linux со встроенными кодеками, воспроизводящий практически любые форматы видео и аудио. Он не требует никаких внешних кодеков. Просто установите SMPlayer и вы сможете воспроизводить любые форматы без необходимости искать и устанавливать пакеты кодеков. Одна из наиболее интересных возможностей SMPlayer — запоминание настроек каждого из воспроизводимых файлов.…
  2017-08-03 15:04:56 | Категория: Мультимедиа
   array_values - вывод всех значений массива
Функция array_values() выводит все значения массива, ключи элементов массива при этом игнорируются. Пример использования: $a = array ('китикет'=>'кошка','сыр'=>'мышка','нога'=>'сапог','чай'=>'пряник'); $arr = array_values ($a); print_r($arr); Array ( [0] => кошка [1] => мышка [2] => сапог [3] =>…
  2017-09-06 21:18:18 | Категория: PHP
   constant - возврат значения константы
Функция constant() возвращает значение константы. Функция используется, если вам необходимо запросить значение константы зная ее имя. Пример использования: define ("сумма", 100); echo сумма; // 100 echo constant("сумма"); //…
  2017-09-20 20:17:33 | Категория: PHP
   МАЙЛ АГЕНТ В LINUX (UBUNTU)
Специальной программы Майл Агент для Linux от mail.ru не существует, но эту проблему можно решить при помощи программы pidgin.   Устанавливаем pidgin sudo apt-add-repository ppa:pidgin-developers/ppasudo apt-get updatesudo apt-get install pidgin Смотрим версию программы   pidgin -v Pidgin 2.10.7 (libpurple 2.10.7) Необходимо установить плагин с сайта сторонних разработчиков (установить одной командой):   Для 64-bit system: cd /tmp && wget…
  2017-07-30 20:33:10 | Категория: Интернет
   NAUTILUS TERMINAL — РАСШИРЕНИЕ КОТОРОЕ ВСТРАИВАЕТ ОКНО ТЕРМИНАЛА В NAUTILUS 3.Х.
Nautilus Terminal — расширение которое встраивает окно терминала в Nautilus 3.х.Для установки расширения в терминале поочередно выполните следующие команды: sudo add-apt-repository ppa:flozz/flozz sudo apt-get update sudo apt-get install nautilus-terminal nautilus…
  2017-08-10 19:37:33 | Категория: Ubuntu

Вверх