Il ciclo foreach è il metodo più semplice, leggibile ed efficace per scorrere un array in PHP.
È progettato apposta per lavorare con collezioni di dati e riduce errori e complessità rispetto ai cicli tradizionali.
Cos’è il foreach
foreach è un ciclo che esegue un blocco di codice una volta per ogni elemento dell’array.
foreach ($array as $valore) {
// codice
}
foreach con array indicizzati
$colori = ["rosso", "verde", "blu"];
foreach ($colori as $colore) {
echo $colore . "<br>";
}
👉 Il ciclo assegna a $colore ogni valore dell’array, uno alla volta.
foreach con array associativi
$studente = [
"nome" => "Marco",
"eta" => 18,
"classe" => "5A"
];
foreach ($studente as $chiave => $valore) {
echo "$chiave: $valore <br>";
}
👉 In questo caso puoi leggere sia chiave che valore.

50 Algoritmi per imparare PHP
Una guida step by step per imparare PHP con esercizi svolti.
foreach con array multidimensionali
$classi = [
["Luca", "Anna"],
["Paolo", "Sara"]
];
foreach ($classi as $classe) {
foreach ($classe as $studente) {
echo $studente . " ";
}
echo "<br>";
}
👉 I foreach annidati servono per strutture complesse.
Modificare gli elementi con foreach
foreach ($numeri as &$n) {
$n *= 2;
}
👉 Il simbolo & permette di modificare direttamente i valori dell’array.
Esempio pratico: calcolo media
$voti = [6, 7, 8, 9];
$somma = 0;
foreach ($voti as $voto) {
$somma += $voto;
}
echo $somma / count($voti);
Esercizi
- Crea un array
$coloricon i valori: “rosso”, “verde”, “blu”, “giallo”. Usa un cicloforeachper stampare tutti i colori su righe separate. - Crea un array associativo
$canzonicon chiavi rappresentanti il titolo e valori rappresentanti l’artista. Usa un cicloforeachper stampare titolo e artista. - Crea un array
$voti = [6, 8, 7, 10, 5];Usa un cicloforeachper stampare solo i voti maggiori o uguali a 7. - Crea un array
$numeri = [1, 2, 3, 4, 5, 6];Usa un cicloforeachper stampare solo i numeri dispari. - Crea un array
$numeri = [2, 4, 6, 8, 10];Usa un cicloforeachper calcolare e stampare la somma di tutti i numeri.