Page 82 - Corso di PHP - Livello base
P. 82
istruzioni, e se non è soddisfatta fin dall'inizio il controllo non
si mette neanche in moto. Ma facciamo un esempio pratico.
Scrivere questo:
$i = 1;
while ($i<1)
{
}
E scrivere questo:
$i = 1;
do
{
}
while ($i<1);
Potrebbe sembrare in apparenza la stessa cosa. Ma in realtà non
è così, perché nel primo caso il ciclo non stampa niente. Nel
secondo invece stampa “1”, proprio perché viene comunque
fatto un “giro” prima del termine. Quindi bisognerebbe
scegliere do-while rispetto a while se si vuole far compiere al
controllo almeno un giro. Il for invece ha il vantaggio rispetto a
while di rendere il codice più compatto: quindi se si hanno
tanti cicli è consigliabile usare for per non avere troppi contatori
sparpagliati per il codice.
Quando si fa uso dei controlli iterativi è necessario prestare
attenzione ai “loop infiniti”, che si creano quando facciamo in
modo che una condizione sia soddisfatta all'infinito. Per
esempio, dichiarando una variabile $j = 2:
for ($i=0; $i<$j; $i++)
{
$j++;
}
Questo è un loop infinito. Fortunatamente PHP ha un limite di
82