Salta ai contenuti
Manuale LogoManuale Logo

Break e continue

In un ciclo può servire fermarsi prima o saltare un giro. PHP offre due parole chiave:

  • break interrompe il ciclo
  • continue salta al giro successivo

Se cerchi un nome in una lista, dopo averlo trovato non serve continuare.

<?php
$nomi = ["Luca", "Sara", "Marta"];
foreach ($nomi as $nome) {
if ($nome === "Sara") {
echo "Trovata Sara";
break;
}
}

Quando incontra break, PHP esce dal ciclo.

continue non chiude il ciclo: salta il resto del blocco corrente.

<?php
$numeri = [1, 2, 3, 4, 5];
foreach ($numeri as $numero) {
if ($numero % 2 === 0) {
continue;
}
echo $numero . "\n";
}

Output:

1
3
5

Il ciclo salta i numeri pari.

break è utile quando hai già trovato ciò che cercavi. continue serve quando un elemento non ti interessa, ma vuoi controllare gli altri.

Attenzione: se usi troppi break e continue, il ciclo può diventare difficile da leggere. Usali quando rendono il codice più chiaro.

break non funziona solo con foreach: puoi usarlo anche con for e while.

<?php
for ($numero = 1; $numero <= 10; $numero++) {
if ($numero === 4) {
break;
}
echo $numero . "\n";
}

Output:

1
2
3

Quando $numero raggiunge 4, il ciclo si ferma.

continue è utile per ignorare alcuni elementi prima del lavoro principale.

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

Il ciclo salta la stringa vuota e lavora solo sui nomi validi.

Prima di usare uno dei due comandi chiediti: vuoi fermare tutto il ciclo o saltare solo questo elemento? La risposta indica se usare break o continue.