Istruzione break in PHP
Supponiamo di avere un ciclo come questo, che visualizza gli elementi di un array:
<?php
$arr = [1, 2, 3, 4, 5];
foreach ($arr as $elem) {
echo $elem;
}
?>
Supponiamo che il nostro compito sia determinare
se nell'array è presente il numero 3. Se presente
- visualizzeremo '+++' (e
se non presente - non faremo nulla).
Risolviamo il nostro compito:
<?php
$arr = [1, 2, 3, 4, 5];
foreach ($arr as $elem) {
if ($elem == 3) {
echo '+++';
}
}
?>
Il compito è risolto, tuttavia, c'è un problema: dopo
che il numero 3 è già stato trovato, l'array
continua comunque a essere scorso inutilmente,
sprecando preziose risorse della CPU e
rallentando il lavoro del nostro script.
Sarebbe più ottimale terminare immediatamente il ciclo
dopo aver trovato il numero. Questo
può essere fatto con l'apposita istruzione
break, che permette di terminare
anticipatamente il ciclo.
Quindi, terminiamo il ciclo non appena
incontriamo il numero 3:
<?php
$arr = [1, 2, 3, 4, 5];
foreach ($arr as $elem) {
if ($elem == 3) {
echo '+++';
break; // usciamo dal ciclo
}
}
?>
L'istruzione break può terminare qualsiasi ciclo:
foreach, for, while.
Dato un array di numeri. Avviate un ciclo che
visualizzi uno per uno gli elementi di questo
array nella console finché non incontra
un elemento con valore 0. Dopodiché
il ciclo deve terminare.
Dato un array di numeri. Trovate la somma degli elementi posizionati dall'inizio dell'array fino al primo numero negativo.
Dato un array di numeri. Trovate la posizione del primo
numero 3 in questo array (supponiamo che
questo numero sia presente nell'array).
Determinate quanti numeri interi, a partire
dal numero 1, devono essere sommati affinché la somma
superi 100.