Luigi Arlotta
a- a+

Ciclo For

Un'altra istruzione utile per il controllo del flusso delprogramma è il costrutto for. Quest'ultimo cipermette di richiedere più volte l'esecuzione diuna o più istruzioni fin quando una particolarecondizione, detta condizione di controllo del ciclo, risultavera. La sintassi PHP del costrutto è la seguente:

 

for ($v=startValue; condizione_su_v; istruzione_su_v){bloccoDiIstrizioni;}

 

dove $v è la variabile di controllo del ciclo. $vviene inizializzata sul valore startValue primadell'inizio del ciclo. Condizione_su_v è lacondizione di controllo del ciclo. Il ciclo termina quandocondizione_su_v restituisce il valore false (cioèquando la condizione su v non è più verificata,quindi falsa). Il primo controllo sulla condizione vieneeffettuato all'ingresso nel ciclo, prima della primaiterazione, è quindi possibile che le istruzioniappartenenti a bloccoDiIstruzioni non vengano mai eseguite.Ciò avviene quando condizione_su_v restituisceimmediatamente il valore false. Istruzione_su_vè un'istruzione che modifica il valore dellavariabile di controllo v. Tale istruzione generalmente fa siche v tenda al valore che soddisfa la condizione di uscita(quindi tale da rendere condizione_su_v falso). Secosì non fosse il rischio sarebbe quello di mandare ilprocesso in loop, cioè creare un ciclo infinito, senzauscita.
L'esempio di seguito contiene codice PHP che costruisceuna tabella tramite l'istruzione for.

<!--file: helloworld.html --><HTML><HEAD><TITLE>Example 7.01</TITLE></HEAD><BODY><?echo ("<TABLE ALIGN=CENTER BORDER=1 CELLSPACING=5>");for ($j=1;$j<=5;$j++) {echo ("<TR>");for ($k=1;$k<=3;$k++)echo ("<TD> Line $j, Cell $k </TD>");echo("</TR>");}echo ("</TABLE>");?></BODY></HTML>

Il codice genera l'output:

Line 1, Cell 1 Line 1, Cell 2 Line 1, Cell 3
Line 2, Cell 1 Line 2, Cell 2 Line 2, Cell 3
Line 3, Cell 1 Line 3, Cell 2 Line 3, Cell 3
Line 4, Cell 1 Line 4, Cell 2 Line 4, Cell 3
Line 5, Cell 1 Line 5, Cell 2 Line 5, Cell 3