continue
La palabra clave "continue" en PHP es una estructura de control que permite saltar a la siguiente iteración de un bucle cuando se cumple una condición.
La palabra clave "continue" en PHP: Guía completa
Como desarrollador PHP, probablemente hayas utilizado bucles para iterar sobre arrays o realizar otras tareas. La palabra clave continue es una estructura de control en PHP que salta inmediatamente a la siguiente iteración cuando se cumple una condición especificada. En este artículo, exploraremos en profundidad la sintaxis y el uso de la palabra clave continue, con numerosos ejemplos para ayudarte a dominar esta importante característica de PHP.
Sintaxis
La palabra clave continue se utiliza para omitir la iteración actual y pasar a la siguiente en PHP. A continuación se muestra la sintaxis básica para usar la palabra clave continue en PHP:
Sintaxis de PHP continue
continue;En este ejemplo, la palabra clave continue omite la iteración actual y pasa a la siguiente.
Ejemplos
Veamos algunos ejemplos prácticos de cómo se puede utilizar la palabra clave "continue":
Ejemplos de 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 dateEn estos ejemplos, la palabra clave continue omite iteraciones específicas cuando se cumple una condición.
Uso avanzado y comparación
Saltar bucles anidados
Por defecto, continue solo afecta al bucle más interno. Para saltar iteraciones de un bucle externo, se puede pasar un argumento numérico opcional que indica a PHP cuántos niveles de bucles enclosing debe aplicar el 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=1Dado que continue 2 salta a la siguiente iteración del bucle externo, el bucle interno nunca llega a $j == 3. Un continue simple (o continue 1) solo omitiría la iteración interna actual y el bucle interno aún imprimiría j=3.
continue vs break
Los principiantes suelen confundir estas dos estructuras de control. Mientras que continue omite la iteración actual y pasa a la siguiente, break termina inmediatamente el bucle completo. Usa continue para filtrar elementos dentro de un bucle, y break para salir anticipadamente una vez que tienes lo que necesitas.
<?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 error común: continue dentro de switch
Dentro de una instrucción switch, continue se comporta como break y solo sale del switch. PHP incluso emite una advertencia. Cuando estás dentro de un bucle y un switch y quieres saltar la iteración del bucle, usa 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: deleteVentajas
Usar la palabra clave continue tiene varias ventajas, entre ellas:
- Mayor eficiencia del código: Ayuda a omitir iteraciones innecesarias, haciendo que el código se ejecute de forma más eficiente.
- Lógica simplificada: Permite manejar el filtrado condicional directamente dentro del bucle, reduciendo la necesidad de bloques
if-elseanidados complejos.
Conclusión
En conclusión, la palabra clave continue es una herramienta poderosa para los desarrolladores PHP, que les permite omitir iteraciones específicas del bucle y mejorar la eficiencia y legibilidad de su código. Recuerda que funciona en todo tipo de bucles — for, foreach, while y do...while — y que el argumento de nivel opcional (continue 2) es lo que permite alcanzar bucles anidados.
Temas relacionados
- Descripción general de los bucles en PHP — cómo encajan todas las construcciones de bucle de PHP.
- PHP
break— la contraparte que sale de un bucle por completo. breakycontinuejuntos — controlar el flujo del bucle uno al lado del otro.