В этом уроке вы узнаете, как повторить серию действий, используя циклы в PHP.
Различные типы циклов в PHP
Циклы используются для выполнения одного и того же блока кода снова и снова, пока не будет выполнено определенное условие. Основная идея цикла состоит в том, чтобы автоматизировать повторяющиеся задачи в программе, чтобы сэкономить время и усилия. PHP поддерживает четыре различных типа циклов.
- while - перебирает блок кода, пока условие не станет истинным.
- do … while - блок кода выполняется один раз, а затем условие проверяется. Если условие истинно, выражение повторяется до тех пор, пока указанное условие истинно.
- for - перебирает блок кода, пока счетчик не достигнет указанного числа.
- foreach - проходит через блок кода для каждого элемента в массиве.
Цикл while в PHP
Оператор while будет циклически проходить по блоку кода, пока условие в операторе while будет равным true.
while(условие){ // Код который нужно выполнять }
Пример ниже создает цикл, который начинается с $i = 1. Цикл будет продолжать выполняться до тех пор, пока $i меньше или равен 3. Значение $i будет увеличиваться на 1 при каждом запуске цикла:
<?php $i = 1; while($i <= 3){ $i++; echo "Number " . $i . "<br>"; } ?>
Цикл do … while в PHP
Цикл do-while является вариантом цикла while, который оценивает условие в конце каждой итерации цикла. В цикле do-while блок кода выполняется минимум один раз, а затем условие оценивается, если условие истинно, цикл повторяется до тех пор, пока указанное условие истинно.
do{ // Код который выполнится как минимум 1 раз } while(условие);
В следующем примере определяется цикл, который начинается с $i = 1. Затем он увеличит $i на 1 и отобразит вывод. Затем условие оценивается и цикл продолжает выполняться, пока $i меньше или равно 3.
<?php $i = 1; do { $i++; echo "Number " . $i . "<br>"; } while($i <= 3); ?>
Разница циклов while и do ... while
Цикл while отличается от цикла do-while одним важным моментом - с циклом while проверяемое условие проверяется в начале каждой итерации цикла, поэтому, если условное выражение имеет значение false, цикл никогда не будет выполнен.
С другой стороны, в цикле do-while цикл всегда будет выполняться один раз, даже если условное выражение ложно, поскольку условие оценивается в конце итерации цикла, а не в начале.
Циклы for в PHP
Цикл for повторяет блок кода, пока не будет выполнено определенное условие. Обычно он используется для выполнения блока кода определенное количество раз.
for(инициализация; условие; инкремент){ // Код который нужно выполнить }
Параметры цикла for имеют следующие значения:
- инициализация - используется для инициализации переменных счетчика, вычисляется один раз перед первым выполнением тела цикла.
- условие - в начале каждой итерации условие оценивается. Если оно принимает значение true, цикл продолжается, и вложенные команды выполняются. Если значение равно false, выполнение цикла заканчивается.
- инкремент - обновляет счетчик цикла новым значением, обычно выполняется в конце каждой итерации.
Пример ниже создает цикл, который начинается с $i = 1. Цикл будет продолжаться до тех пор, пока $i будет меньше или равно 3. Переменная $i будет увеличиваться на 1 при каждом запуске цикла:
<?php for($i=1; $i<=3; $i++){ echo "Number " . $i . "<br>"; } ?>
Цикл foreach в PHP
Цикл foreach обычно используется для перебора элементов массива (переводится как «для каждого»).
foreach($array as $value){ // Код который нужно выполнить }
В следующем примере демонстрируется цикл, который будет выводить значения данного массива:
<?php $colors = array("Red", "Green", "Blue"); // Проходим по всем элементам массива foreach($colors as $value){ echo $value . "<br>"; } ?>
Существует еще один синтаксис цикла foreach, который является дополнением первого.
foreach($array as $key => $value){ // Код который нужно выполнить }
Этот цикл используется для работы с ассоциативными массивами.
<?php $superhero = array( "name" => "Vasya Pupkin", "email" => "vasyapupkin@mail.com", "age" => 18 ); // Проходим по массиву foreach($superhero as $key => $value){ echo $key . " : " . $value . "<br>"; } ?>
В результате вы увидите это:
name : Vasya Pupkin email : vasyapupkin@mail.com age : 18
Оставить комментарий