Циклы в PHP

Циклы в PHP

В этом уроке вы узнаете, как повторить серию действий, используя циклы в PHP.

Различные типы циклов в PHP

Циклы используются для выполнения одного и того же блока кода снова и снова, пока не будет выполнено определенное условие. Основная идея цикла состоит в том, чтобы автоматизировать повторяющиеся задачи в программе, чтобы сэкономить время и усилия. PHP поддерживает четыре различных типа циклов.

  1. while - перебирает блок кода, пока условие не станет истинным.
  2. do … while - блок кода выполняется один раз, а затем условие проверяется. Если условие истинно, выражение повторяется до тех пор, пока указанное условие истинно.
  3. for - перебирает блок кода, пока счетчик не достигнет указанного числа.
  4. 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

Оставьте первый комментарий

Оставить комментарий

Ваш электронный адрес не будет опубликован.


*