PHP: Цикл while (do while)
Чтобы приступить к использованию циклов, нужно узнать, что они собой представляют, на что способны и зачем нужны в сценариях. Цикл - это блок кода, позволяющий повторять выполнение некоторых действий (инструкций) определенное количество раз. Каждое отдельное исполнение (одно или более повторений) последовательности инструкций в цикле называется - итерация.
Каждый цикл состоит из двух основных частей. Первая определяет, когда должно быть остановлено исполнение цикла. Вторая - собственно фрагмент программного кода, выполняющий необходимые действия, который может состоять из одной единственной инструкции или из нескольких инструкций, заключенных в фигурные скобки.
Программный код цикла исполняется до тех пор, пока условное выражение цикла возвращает значение TRUE
. Чтобы избежать бесконечного цикла, который будет крутиться вечно, код тела цикла должен заставить условное выражение в определенный момент вернуть значение FALSE
. Когда это произойдет, работа цикла прекратится, и исполнение продолжится со строки кода, расположенной непосредственно после цикла.
Цикл while
Цикл while
является простейшим видом цикла в PHP. Его синтаксис:
Ниже приводится пример цикла while
, тело которого исполняется 10 раз:
<?php $num = 1; while ($num <= 10) { echo "Итерация номер: $num<br>\n"; $num++; } ?>
Перед началом цикла значение переменной $num
устанавливается равным 1 (значение может быть любым). Это называется инициализацией переменной-счетчика. Каждый раз, когда исполняется тело цикла, с помощью инкремента $num++
значение переменной $num
увеличивается на единицу. Значение выражения ($num <= 10
) проверяется каждый раз перед итерацией цикла. После десяти итераций условное выражение вернет значение FALSE
(так как значение переменной $num
уже будет не меньше или равно 10) и работа цикла прекратится. В том случае, если условное выражение while
будет равно FALSE
с самого начала, тело цикла ни разу не будут выполнено.
Большинство циклов имеют переменные-счетчики, аналогичные $num
. Чаще всего в качестве счетчиков цикла выступают переменные с именами i, j
и k
, хотя для того чтобы сделать программный код более понятным, следует давать счетчикам более наглядные имена.
Цикл do while
Цикл do while
очень похож на цикл while
, с тем отличием, что условное выражения проверяется в конце итерации, а не в начале. Синтаксис этого цикла:
Между циклом do while
и обычным циклом while
имеется два отличия. Во-первых, цикл do while
требует как ключевого слова do
(для отметки начала цикла), так и ключевого слова while
(для отметки конца цикла и указания условия). Во-вторых, в отличие от цикла while
, цикл do while
завершается точкой с запятой. Данная разновидность цикла полезна, когда тело цикла должно быть исполнено хотя бы один раз, независимо от значения условного выражения.
Попробуем выполнить те же самые действия, что и в предыдущем примере:
<?php $num = 1; do { echo "Итерация номер: $num<br>\n"; $num++; } while ($num <= 10); ?>
С этой темой смотрят: