Циклите while (докато) са най-простия тип цикъл в PHP. Те работят по същия начин както техния еквивалент в C. Основната форма на конструкцията while е:
while (expr) statement
Смисълът на конструкцията while е прост. Тя казва на PHP да повтаря изпълнението на вложените конструкции, докато изразът while се изчислява на TRUE. Стойността на израза се проверява всеки път в началото на цикъла, така че дори и тази стойност да се промени докато се изпълняват вложените конструкции, изпълнението няма да спре докато не се достигне края на итерацията (всеки път, когато PHP пуска конструкциите в цикъла, е една итерация). В случай че изразът while се изчисли на FALSE от самото начало, вложените конструкции няма да бъдат пуснати нито веднъж.
Също както и с конструкцията if, можете да групирате множество конструкции в един и същи цикъл while като оградите групата от конструкции с фигурни скоби, или като използвате алтернативен синтаксис:
while (expr): statement ... endwhile;
Следните примери са идентични като и двата отпечатват числата от 1 до 10:
<?php
/* пример 1 */
$i = 1;
while ($i <= 10) {
echo $i++; /* отпечатаната стойност ще бъде
$i преди инкрементацията
(пост-инкрементация) */
}
/* пример 2 */
$i = 1;
while ($i <= 10):
echo $i;
$i++;
endwhile;
?>