Un ciclo è un'istruzione php che fa ripetere più volte un'insieme di operazioni/istruzioni contenute al suo interno. I cicli supportati sono il while, do while, for, foreach.
La struttura di un ciclo While è mostrata qui di seguito; le istruzioni al suo interno vengono eseguite ogni volta che la condizione è verificata.
|
while(condizione ) { istruzione } |
Esempio:
|
$a=array(1,2,3,4,5,6,7,8,9); $i=0; while($i<count($a)) { print("Questo è il ".$i."° ciclo <br>"); $i++; } |
In questo esempio la condizione è una semplice disuguaglianza tra la variabile contatore $i ( che va inizializzata prima del ciclo ) e il valore numerico corrente nell'array. Come ultima istruzione del ciclo while, c'è l'istruzione che permette di incrementare di una unità la variabile $i: $i++ ( si userebbe $i-- per decrementare la stessa ).
Di risultato:
Questo è il 0° ciclo
Questo è il 1° ciclo
Questo è il 2° ciclo
Questo è il 3° ciclo
Questo è il 4° ciclo
Questo è il 5° ciclo
Questo è il 6° ciclo
Questo è il 7° ciclo
Questo è il 8° ciclo
E' uguale al ciclo while solo che la condizione è posta alla fine del ciclo.
|
$a=array(1,2,3,4,5,6,7,8,9); $i=0; do { print("Questo è il ".$i."° ciclo <br>"); $i++; } while($i<count($a)) |
La differenza è che viene compiuta una iterazione in più del semplice ciclo while.
Di output:
Questo è il 0° ciclo
Questo è il 1° ciclo
Questo è il 2° ciclo
Questo è il 3° ciclo
Questo è il 4° ciclo
Questo è il 5° ciclo
Questo è il 6° ciclo
Questo è il 7° ciclo
Questo è il 8° ciclo
Questo è il 9° ciclo
|
for(inizializzazione,condizione,incremento ) { istruzione } |
Esempio:
|
$a=array(1,2,3,4,5,6,7,8,9); for($i=0;$i<count($a);$i++) { print("Questo è il ".$i."° ciclo <br>"); } |
Il primo parametro è il valore di partenza dell'iterazione, il secondo la condizione di uscita e la terza rappresenta l'incremento dell'indice. L'output è lo stesso di quello del ciclo While.
Si usa quando si ha un array con un numero sconosciuto di coppie chiavi/valori; esso esegue iterazioni fino alla fine dell'array:
|
foreach($array as $chiave => $valore) { istruzione } |
Alla $chiave si assegnano, iterazione dopo iterazione, tutti i nomi delle chiavi dell'array, mentre con $valore i nomi di tutti i valori corrispondenti alle relative chiavi; non sono altro che due variabili di appoggio necessarie per gestire gli elemeti dell'array. Esempio:
|
$arr = array("Pippo"=>"De Pippis", "Mario"=>"Neri", 1=>2, 23=>"Ciccio" ); foreach($arr as $key=>$val) { print($val." "); } |
L'output è: De Pippis Neri 2 Ciccio