continue
La parola chiave "continue" in PHP è una struttura di controllo che permette di saltare all'iterazione successiva di un ciclo quando una condizione è soddisfatta.
La parola chiave PHP "continue": Guida completa
Da sviluppatore PHP, potresti aver usato i cicli per iterare su array o svolgere altre operazioni. La parola chiave continue è una struttura di controllo in PHP che salta immediatamente all'iterazione successiva quando una condizione specificata è soddisfatta. In questo articolo esploreremo la sintassi e l'utilizzo della parola chiave continue in profondità, fornendo numerosi esempi per aiutarti a padroneggiare questa importante funzionalità di PHP.
Sintassi
La parola chiave continue viene utilizzata per saltare l'iterazione corrente e passare alla successiva in PHP. Di seguito è riportata la sintassi di base per utilizzare continue in PHP:
Sintassi di PHP continue
continue;In questo esempio, la parola chiave continue salta l'iterazione corrente e passa alla successiva.
Esempi
Vediamo alcuni esempi pratici di come è possibile utilizzare la parola chiave "continue":
Esempi di PHP continue
<?php
// Example 1
for ($i = 0; $i < 10; $i++) {
if ($i == 5) {
continue;
}
echo $i . PHP_EOL;
}
// Output: 0 1 2 3 4 6 7 8 9
// Example 2
$myArray = ["apple", "banana", "cherry", "date"];
foreach ($myArray as $value) {
if ($value == "cherry") {
continue;
}
echo $value . PHP_EOL;
}
// Output: apple banana dateIn questi esempi, la parola chiave continue ignora iterazioni specifiche quando una condizione è soddisfatta.
Utilizzo avanzato e confronto
Saltare cicli annidati
Per impostazione predefinita, continue influisce solo sul ciclo più interno. Per saltare le iterazioni di un ciclo esterno, è possibile passare un argomento numerico opzionale che indica a PHP a quanti livelli di ciclo applicare il continue:
<?php
for ($i = 1; $i <= 3; $i++) {
for ($j = 1; $j <= 3; $j++) {
if ($j == 2) {
continue 2; // skip to the next iteration of the OUTER loop
}
echo "i=$i, j=$j" . PHP_EOL;
}
}
// Output:
// i=1, j=1
// i=2, j=1
// i=3, j=1Poiché continue 2 salta all'iterazione successiva del ciclo esterno, il ciclo interno non raggiunge mai $j == 3. Un semplice continue (o continue 1) salterebbe solo l'iterazione interna corrente e il ciclo interno stamperebbe comunque j=3.
continue vs break
I principianti spesso confondono queste due strutture di controllo. Mentre continue salta l'iterazione corrente e passa alla successiva, break termina immediatamente l'intero ciclo. Usa continue per filtrare gli elementi all'interno di un ciclo e break per uscire anticipatamente una volta ottenuto ciò di cui hai bisogno.
<?php
foreach ([1, 2, 3, 4, 5] as $n) {
if ($n == 3) {
continue; // skip 3, keep looping
}
echo $n . PHP_EOL;
}
// Output: 1 2 4 5
foreach ([1, 2, 3, 4, 5] as $n) {
if ($n == 3) {
break; // stop the loop at 3
}
echo $n . PHP_EOL;
}
// Output: 1 2Un errore comune: continue dentro switch
All'interno di un'istruzione switch, continue si comporta come break e termina solo lo switch. PHP emette persino un avviso. Quando ci si trova all'interno di un ciclo e di uno switch e si vuole saltare l'iterazione del ciclo, bisogna usare continue 2:
<?php
foreach (["save", "skip", "delete"] as $action) {
switch ($action) {
case "skip":
continue 2; // skip this loop iteration, not just the switch
default:
echo "Handling: $action" . PHP_EOL;
}
}
// Output:
// Handling: save
// Handling: deleteVantaggi
L'utilizzo della parola chiave continue offre diversi vantaggi, tra cui:
- Maggiore efficienza del codice: aiuta a ignorare iterazioni non necessarie, rendendo il codice più efficiente.
- Logica semplificata: consente di gestire il filtraggio condizionale direttamente all'interno del ciclo, riducendo la necessità di blocchi
if-elseannidati e complessi.
Conclusione
In conclusione, la parola chiave continue è uno strumento potente per gli sviluppatori PHP, che consente di saltare iterazioni specifiche del ciclo e migliorare l'efficienza e la leggibilità del codice. Ricorda che funziona con tutti i tipi di ciclo — for, foreach, while e do...while — e che l'argomento di livello opzionale (continue 2) è ciò che permette di raggiungere i cicli annidati.
Argomenti correlati
- Panoramica sui cicli PHP — come si incastrano tutti i costrutti di ciclo di PHP.
- PHP
break— il corrispettivo che esce da un ciclo completamente. breakecontinueinsieme — controllo del flusso del ciclo fianco a fianco.