Перейти к основному содержимому

Цикл do...while в PHP

Цикл do...while всегда выполняет свой код хотя бы один раз. После этого первого выполнения он проверяет условие и повторяется, пока условие остаётся истинным.

Примечание: Так происходит потому, что проверка находится внизу цикла, после кода. Даже условие, ложное с самого начала, не может помешать первому выполнению.

Основы цикла do while

$i начинается с 1, а цикл выводит его и прибавляет 1, пока $i не перестанет быть меньше 6:

Prompt
Напишите PHP-скрипт, который присваивает $i значение 1. Используйте цикл do...while, чтобы вывести $i и увеличить $i на 1, пока $i меньше 6.
Вывод: PHP-скрипт

Do while с ложным условием

Здесь $i начинается с 8, что уже не проходит проверку $i < 6. Значение всё равно выводится один раз, потому что PHP смотрит на условие только после выполнения блока кода:

Prompt
Напишите PHP-скрипт, который присваивает $i значение 8. Используйте цикл do...while, чтобы вывести $i и увеличить $i на 1, пока $i меньше 6. Цикл всё равно должен выполниться один раз.
Вывод: PHP-скрипт

Синтаксис do while

Общая форма выглядит так, а условие записывается после закрывающей фигурной скобки:

index.php
do {
  // code to be executed
} while (condition);

Оператор break в PHP

Оператор break досрочно завершает цикл do...while независимо от того, истинно ли ещё его условие.

Остановка цикла с помощью break

Вывод останавливается, когда $i достигает 3, поэтому появляются только 1 и 2:

Prompt
Напишите PHP-скрипт, который присваивает $i значение 1. Используйте цикл do...while с условием $i < 6. Внутри цикла, если $i равно 3, используйте break, чтобы остановить цикл. В остальных случаях выведите $i и увеличьте $i.
Вывод: PHP-скрипт

Оператор continue в PHP

Чтобы пропустить один проход, используйте continue. Оставшаяся часть этой итерации отбрасывается, и цикл продолжается со следующей.

Пропуск итерации с помощью continue

Обратите внимание, что $i увеличивается в начале тела цикла, до проверки. Когда оно равно 3, echo пропускается, поэтому числа 3 в выводе нет:

Prompt
Напишите PHP-скрипт, который присваивает $i значение 0. Используйте цикл do...while с условием $i < 6. Внутри цикла сначала увеличьте $i. Если $i равно 3, используйте continue, чтобы пропустить вывод. В остальных случаях выведите $i.
Вывод: PHP-скрипт