Questa volta
parliamo di altri due cicli iterativi o costrutti di controllo che in realtà si
possono sommare in un unico controllo. Alla fine spiegheremo le differenze!
Il ciclo WHILE serve per eseguire un blocco di istruzioni al verificarsi
di una determinata condizione.
Ecco
qui il codice base:
while (espressione) {
istruzione
}
...ed un piccolo classico esempio:
<?
$i = 0;
while ($i <= 10)
{
print $i;
print “<br>\n”;
i++;
}
?>
...che visualizza i primi dieci numeri naturali.
Nell'immagine a lato ho rappresentato il diagramma di flusso di questa
istruzione.
Ma esiste anche un altro metodo con cui è possibile realizzare l'istruzione
While: è il sistema WHILE - DO.
La
sua sinstassi è leggermente differente. Eccola:
do {
espressione
}
while (istruzione)
Ecco qui il precedente esempio riscritto con la nuova sintassi:
<?
$i = 0;
do
{
print $i;
print “<br>\n”;
i++;
} while ($i <= 10);
?>
Come si comprende bene dai diagrammi di flusso la differenza dei due cicli sta
nel fatto che nel primo ciclo l'istruzione non viene effettuata neanche una
volta se al primo "giro" si riceve un valore "false", mentre
nel secondo caso le istruzioni vengono comunque eseguite almeno una volta.
Questa differenza, da non trascurare, si trova nella posizione dell'istruzione
di controllo. Infatti nel primo caso il controllo avviene a monte mentre nel
secondo caso il controllo avviene a valle.