Salta ai contenuti
Manuale LogoManuale Logo

Cicli

Un ciclo ripete una o più istruzioni. È utile quando non vuoi scrivere la stessa riga molte volte.

while ripete il blocco finché una condizione resta vera.

<?php
$numero = 1;
while ($numero <= 3) {
echo $numero . "\n";
$numero++;
}

Output:

1
2
3

Senza $numero++, la condizione resterebbe sempre vera e il ciclo non terminerebbe.

do while esegue il blocco almeno una volta e controlla la condizione solo dopo.

<?php
$tentativi = 0;
do {
echo "Provo...\n";
$tentativi++;
} while ($tentativi < 1);

for è comodo quando sai quante ripetizioni vuoi eseguire.

<?php
for ($i = 1; $i <= 5; $i++) {
echo "Riga $i\n";
}

Tra le parentesi trovi il valore iniziale, la condizione e l’aggiornamento.

foreach serve a scorrere gli array.

<?php
$nomi = ["Luca", "Sara", "Marta"];
foreach ($nomi as $nome) {
echo "Ciao $nome\n";
}

A ogni giro $nome contiene un elemento diverso dell’array.

Usa foreach per gli array, for quando conosci il numero di ripetizioni e while quando vuoi ripetere finché una condizione cambia.

Un ciclo infinito non termina. Di solito succede quando la condizione non cambia mai.

<?php
$numero = 1;
while ($numero <= 3) {
echo $numero;
}

Qui $numero resta sempre 1, quindi la condizione rimane vera. Per correggere il ciclo devi aggiornare il valore al suo interno.

<?php
$numero = 1;
while ($numero <= 3) {
echo $numero . "\n";
$numero++;
}

Un uso comune dei cicli consiste nel sommare valori.

<?php
$prezzi = [10, 15, 5];
$totale = 0;
foreach ($prezzi as $prezzo) {
$totale += $prezzo;
}
echo $totale;

Output:

30

Crea un array di voti e usa foreach per sommarli. Poi dividi il totale per count($voti) e stampa la media.