Homepage -> Guida PHP

CICLI



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.


Ciclo While

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



Ciclo Do While

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


Ciclo For

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.


Ciclo Foreach

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