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

   FILE COMMANDER — КОНСОЛЬНЫЙ ФАЙЛОВЫЙ МЕНЕДЖЕР
File Commander — консольный файловый менеджер, который является почти полным аналогом Norton Commander. Так же как и в Norton Commander в File Commander имеется два окна в которых отображена домашняя директория пользователя, при этом выделенное окно является текущем, а второе окно используется для указания куда копировать или перемещать папку или файл. Так же второе окно используется для вывода информации об активном окне. В…
  2017-08-11 08:42:23 | Категория: Разное
   compact - создание массива, содержащий названия переменных и их значения
Функция compact() создает массив, содержащий названия переменных и их значения. Пример использования: $a = "тепло"; $b = "холодно"; $c = "жарко"; $arr = array("a","b","c"); print_r ($result = compact($arr)); Array ( [a] => тепло [b] => холодно [c] => жарко ) Так же можно обойтись без функции array(), перечислив имена переменных в функции compact(): $a = "тепло"; $b = "холодно"; $c = "жарко"; print_r ($result = compact("c","b","a",$arr)); Array ( [c] => жарко [b] => холодно [a]…
  2017-09-19 20:20:37 | Категория: PHP
   FLAREGET — МНОГОПОТОЧНЫЙ, МНОГОСЕГМЕНТНЫЙ МЕНЕДЖЕР ЗАГРУЗОК
FlareGet полнофункциональный, многопоточный, многосегментный менеджер загрузок для Linux. Возможности программы: HTTP-Pipelining; Динамическая сегментация файлов: поддержка до 32 сегментов на загрузку Автосегментация: когда заканчивается один сегмент, автоматически начинает загружаться следующий Поддержка Flash-видео для «большинства сайтов и всех браузеров» Поддержка возобновления загрузок Умный…
  2017-08-08 19:12:23 | Категория: Интернет
   Изменение регистра всех ключей массива
Для изменения регистра всех ключей массива используется функция array_change_key_case(). Числовые ключи останутся нетронутыми. Дополнительные параметры CASE_UPPER, либо CASE_LOWER (используется по умолчанию). Пример использования: Верхний регистр $a = array("g1"=>"кино", "g2"=>"музыка", "g3"=>"театр", "g4"=>"цирк", "red"=>"школа"); print_r($a); echo "<br>"; $a = array_change_key_case($a, CASE_UPPER); print_r($a); Array ( [g1] => кино [g2] => музыка [g3] => театр [g4] =>…
  2017-08-20 21:51:38 | Категория: PHP
   array_intersect - вычисление схождения массивов
Функция array_intersect() сравнивает два массива и выводит элементы первого массива если такие же элементы имеются во втором массиве, ключи элементов массива при этом сохраняются. Пример использования: $a = array (1=>'кошка',2=>'мышка',4=>'сапог',6=>'пряник'); $b = array (1=>'кошка',3=>'пряник',4=>'кино',5=>'стакан'); $arr = array_intersect ($a, $b); print_r($arr); Array ( [1] => кошка [6] =>…
  2017-09-02 22:48:09 | Категория: PHP

Вверх