Контролни структури
PHP Manual

do-while

Циклите do-while (прави-докато) са подобни на циклите while, с тази разлика, че вместо в началото, изразът за истинност се проверява в края на всяка итерация. Основната разлика от обикновените цикли while е, че първата итерация на цикъл do-while със сигурност ще се изпълни (условието се проверява единствено в края на итерацията), докато при циклите while не е задължително да се изпълни (условието се проверява в началото на всяка итерация, така че ако се изчисли на FALSE от самото начало, цикълът ще завърши незабавно).

Съществува само един синтаксис за цикли do-while:

<?php
$i 
0;
do {
    echo 
$i;
} while (
$i 0);
?>

Горният цикъл ще се изпълни точно един път, тъй като след първата итерация, когато се провери условието, то ще се изчисли на FALSE ($i не е по-голяма от 0) и изпълненито на цикъла ще спре.

Напредналите програмисти на C може би са запознати с една друга употреба на цикъла do-while: в случай че трябва да се спре изпълнението в средата на блокове от код, те се заграждат с do-while (0) и се използва командата break. Следният фрагмент от код демонстрира това:

<?php
do {
    if (
$i 5) {
        echo 
"i не е достатъчно голямо";
        break;
    }
    
$i *= $factor;
    if (
$i $minimum_limit) {
        break;
    }
    echo 
"i е ОК";

    
/* работа с i */

} while (0);
?>

Не се притеснявате ако не разберете това веднага или изобщо никога. Можете да пишете скриптове и то мощни скриптове без да използвате това 'свойство'.


Контролни структури
PHP Manual