Цикл PHP foreach: два способа его использования

Цикл PHP foreach можно использовать следующим образом:

foreach($array_name as $value){
 
//код, который должен выполняться
 
}

Или так:

foreach($array_name as $key =>$value){
 
// //код, который должен выполняться
 
}

Пример использования цикла foreach с числовым массивом

В этом примере мы создадим массив из пяти элементов с числовыми значениями. После этого цикл PHP foreach будет использован для выполнения итерации этого массива. Внутри цикла foreach мы использовали echo, чтобы вывести значения массива:

PHP-foreach

Посмотреть демо-версию и код

Пример с ключами и значениями массива

В этом примере описан другой способ использования цикла foreach PHP. Для этого мы создали ассоциативный массив из трех элементов. В него входят имена сотрудников (в качестве ключей) и суммы заработной платы (в качестве значений):

associative-array

Посмотреть демо-версию и код

Пример изменения значения элемента массива в цикле foreach

Также можно c помощью PHP array foreach можно изменять значения элементов массива. Для этого используется «&» перед «$» для переменной значения. Например:

&$value_of_element

Значение будет изменено. Чтобы вам было понятнее, рассмотрим следующий пример.

В этом примере мы создали числовой массив из пяти элементов. После этого использовали цикл foreach для отображения значений элементов.

Затем создали еще один цикл foreach, где перед $value_of_element добавляется «&«. Внутри фигурных скобок присваиваем новые значения элементам массива.

Чтобы увидеть разницу до и после присвоения новых значений, массив отображается с помощью функции print_r().

foreach-reference

Посмотреть демо-версию и код

Для чего используется цикл PHP foreach?

Цикл PHP foreach используется для работы с массивом. Он перебирает каждый его элемент.

Также можно использовать для работы с массивами цикл for. Например, используя свойство length, чтобы получить длину массива, а затем применить его в качестве оператора max. Но foreach делает это проще, так как он предназначен для работы с массивами.

Если вы работаете с MySQL, то для этого данный цикл подходит еще больше. Например, можно выбрать несколько строк из таблицы БД и передать их в массив. После этого, используя цикл foreach, перебрать все элементы массива с выполнением какого-либо действия.

Обратите внимание, что можно использовать цикл foreach с массивом или только с объектом.

Применение цикла foreach

В PHP существует два способа использования цикла foreach PHP. Оба описаны ниже.

  • Синтаксис первого метода использования:
foreach($array_name as $value){
 
echo $value
 
}

При этом нужно указать имя массива, а затем переменную $value.

Для каждой итерации значение текущего элемента присваивается переменной $value. После завершения итерации переменной присваивается значение следующего элемента. И так до тех пор, пока все элементы массива не будут перебраны.

  • Синтаксис второго метода (PHP foreach as key value):
foreach ($array_name as $key_of_element => $value_of_element){
 
//code to be executed here
 
}

Это подходит для ассоциативных массивов, в которых используются пары ключ / значение.

Во время выполнения каждой итерации значение текущего элемента будет присвоено переменной $value_of_element. Кроме этого ключ элемента присваивается переменной $key_of_element.

Если вы работаете с числовыми массивами, то можно использовать первый метод, в котором не нужны ключи элементов.

Перевод статьи «PHP foreach loop 2 ways to use it» был подготовлен дружной командой проекта Сайтостроение от А до Я.