Цикл do...while в PHP
Цикл do...while всегда выполняет свой код хотя бы один раз. После этого первого выполнения он проверяет условие и повторяется, пока условие остаётся истинным.
Примечание: Так происходит потому, что проверка находится внизу цикла, после кода. Даже условие, ложное с самого начала, не может помешать первому выполнению.
Основы цикла do while
$i начинается с 1, а цикл выводит его и прибавляет 1, пока $i не перестанет быть меньше 6:
Вывод: PHP-скрипт
<?php
$i = 1;
do {
echo $i;
$i++;
} while ($i < 6);
?>
Do while с ложным условием
Здесь $i начинается с 8, что уже не проходит проверку $i < 6. Значение всё равно выводится один раз, потому что PHP смотрит на условие только после выполнения блока кода:
Вывод: PHP-скрипт
<?php
$i = 8;
do {
echo $i;
$i++;
} while ($i < 6);
?>
Синтаксис do while
Общая форма выглядит так, а условие записывается после закрывающей фигурной скобки:
do {
// code to be executed
} while (condition);
Оператор break в PHP
Оператор break досрочно завершает цикл do...while независимо от того, истинно ли ещё его условие.
Остановка цикла с помощью break
Вывод останавливается, когда $i достигает 3, поэтому появляются только 1 и 2:
Вывод: PHP-скрипт
<?php
$i = 1;
do {
if ($i == 3) break;
echo $i;
$i++;
} while ($i < 6);
?>
Оператор continue в PHP
Чтобы пропустить один проход, используйте continue. Оставшаяся часть этой итерации отбрасывается, и цикл продолжается со следующей.
Пропуск итерации с помощью continue
Обратите внимание, что $i увеличивается в начале тела цикла, до проверки. Когда оно равно 3, echo пропускается, поэтому числа 3 в выводе нет:
Вывод: PHP-скрипт
<?php
$i = 0;
do {
$i++;
if ($i == 3) continue;
echo $i;
} while ($i < 6);
?>