Estruturas de Controle
PHP Manual

do-while

(PHP 4, PHP 5)

O loop do-while é muito similar ao loop while, exceto pela expressão de verificação que está no final de cara iteração ao invés de estar no começo. A maio diferença para o loop normal while é que a primeira iteração do loop do-while é sempre executada (a expressão de verificação somente é executada no final da iteração), considerando que no loop while não é necessariamente executada (a expressão de verificação é executada no começo de cada iteração, e se o resultado for FALSE logo no começo, a execução do loop é abortada imediatamente).

Só há uma sintaxe para o loopdo-while:

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

O loop acima será executado somente uma vez, pois após a primeira iteração, quando a expressão de verificação for executada, ela resultará em FALSE ($i não é maior que 0) e a execução do loop será encerrada.

Usuário avançados de C devem estar familiarizados com um uso diferente do loop do-while, que permite parar a execução no meio do bloco de códigos, encapsulando eles em um do-while (0), e usando o break . O código a seguir demonstra isso:

<?php
do {
    if (
$i 5) {
        echo 
"i is not big enough";
        break;
    }
    
$i *= $factor;
    if (
$i $minimum_limit) {
        break;
    }
   echo 
"i is ok";

    
/* process i */

} while (0);
?>

Não se preocupe se você não entender isso neste momento. Você pode criar scripts simples ou mesmo poderosos sem usar esse 'recurso'. Desde o PHP 5.3.0, é possível usar o operador goto ao invés desse hack.


Estruturas de Controle
PHP Manual