Работа с циклом Do While в PHP. Чем он отличается от обычного оператора While?

работа с циклом do while в php. чем он отличается от обычного оператора while?

Использование цикла do while

Оператор цикла do while очень похож на своего прямого родственника, которого мы рассматривали в предыдущей статье «оператор цикла while». Однако его применение очень специфично. Программируя на PHP, редко встречаются случаи, где цикл do while действительно необходим.

Отличительной особенностью оператора do while является то, что он гарантирует выполнение тела цикла хотя бы один раз. Проверка входящего параметра в нем происходит в конце итерации[1]. Чтобы понять все вышесказанное, рассмотрите приведенный ниже пример.

//Задаем строковую переменную со статусом администратора
$adminStatus = 'logout';

//Цикл будет повторяться и выводить сообщение, пока статусом
//администратора является "login". Однако в противном случае
//он всё равно, один раз, выведет строку со статусом.
do {
    echo "Статус администратора: $adminStatus";
} while($adminStatus === 'login');

Правила использования цикла do while:

  1. Конструкция начинается с ключевого слова «do», за которым следуют фигурные скобки.
  2. Внутри фигурных скобок располагается программный код, требующий многократного выполнения.
  3. Следом за закрывающей фигурной скобкой располагаются круглые скобки, в которых задается входящий параметр. В него вы можете передать значения любого типа или составить целое выражение.
  4. За закрывающей круглой скобкой указывается символ точки с запятой «;», определяющий конец выражения.

Цикл do while преобразует входящий параметр к логическому true или false. Он продолжает свое выполнение только в том случае, если входящий параметр является true. При каждой итерации входящее значение высчитывается заново.

Важно:
Если входящий параметр не изменялся при первой или последующих итерациях, или все изменения приводят его к true, то цикл будет бесконечным. Программа сосредоточит свое выполнение на теле цикла без шанса выйти из него. Завершить выполнение такой программы можно, только закрыв вкладку в браузере.

//Задаем числовую переменную хранящую начало отсчета
$counter = 0;

//Первый шаг цикла "do while" выполняется всегда. В
//нем входящий параметр увеличивается на единицу
//делая проверку "$counter > 0" истинной всегда.
do {
    $counter++;
    echo "Текущий шаг итерации равен: $counter";
} while($counter > 0);

Термины, использованные в статье

  1. Итерация — многократное повторение какого-либо кода по обработке данных. Зачастую слово «итерация» применяют в отношении текущего витка выполнения цикла, его также называют шагом итерации. Каждый шаг итерации, как правило, происходит с различными или измененными в предыдущем данными.

Последние публикации