Конструкция foreach в PHP.
Конструкция foreach в PHP позволяет легко осуществлять перебор элементов массива. Обычно foreach() используется в тех случаях, когда необходимо перебрать именно все элементы массива (от самого первого до последнего).
Синтаксис foreach. Данная конструкция может быть использована в двух вариациях:
1 2 3 |
foreach($some_array as $value){ //здесь какие-то действия с элементом массива $value } |
Здесь нас не интересует индекс перебираемых элементов, поэтому мы работаем только с их значением $value. Рассмотрим пример:
1 2 3 4 5 6 7 8 9 |
<?php $product[] = "Банан"; $product[] = "Хлеб"; $product[] = "Молоко"; $product[] = "Рис"; foreach ($product as $value) { echo "<b>$value</b><br>"; } ?> |
Будет выведен список продуктов:
Банан
Хлеб
Молоко
Рис
Если же индекс (ключ) нам тоже важен для обработки данных, то можно использовать foreach несколько иначе:
1 2 3 |
foreach($some_array as $key => $value){ //здесь мы можем работать не только со значением $value, но и с ключом данного элемента $key } |
Если массив $some_array окажется пустым, то действия внутри цикла выполнены не будут. Если же массив $some_array совсем не существует, то мы получим сообщение об ошибке.
Обратите внимание, что foreach не поддерживает подавление ошибок с помощью символа @.
С началом работы foreach внутренний указатель массив автоматически перемещается на самый первый элемент. При каждой интерации это указатель изменяется на 1, то есть переходит к следующему элементу. По окончании работы цикла сохраняется ссылка на последний элемент массива. Мы можем использовать этот элемент, либо же уничтожить ссылку (значение $value):
1 |
unset($value); |
Для многомерных массивов мы можем использовать вложенные конструкции foreach. Рассмотрим пример:
1 2 3 4 5 6 7 8 9 10 11 |
$my_array = array(); $my_array[0][0] = "Хлеб"; $my_array[0][1] = "Булочка"; $my_array[1][0] = "Молоко"; $my_array[1][1] = "Сок"; foreach ($my_array as $a1) { foreach ($a1 as $a2) { echo $a2.”<br>”; } } |
Этот код выведет список наших продуктов.
Другие посты
Категория: PHP-скрипты