Sentencia break
Parte de la sección Fundamentos del Journey de PHP de Coddy — lección 51 de 71.
A veces necesitas salir de un bucle temprano, antes de que termine naturalmente. La instrucción break te permite hacer exactamente eso: detiene inmediatamente el bucle y continúa con el código después de él.
Imagina buscar en un array un valor específico. Una vez que lo encuentres, no tiene sentido verificar los elementos restantes. Usar break ahorra iteraciones innecesarias.
<?php
$numbers = [3, 7, 2, 9, 5, 1];
foreach ($numbers as $num) {
if ($num === 9) {
echo "Found 9!\n";
break;
}
echo "Checking $num\n";
}
echo "Search complete";
?>Esto produce:
Checking 3
Checking 7
Checking 2
Found 9!
Search completeObserva que 5 y 1 nunca se verifican. En el momento en que el bucle encuentra 9, break sale completamente del bucle, y la ejecución salta a «Búsqueda completada».
La break sentencia funciona con todos los tipos de bucles—for, while y foreach. Es particularmente útil cuando estás buscando algo o cuando una determinada condición significa que el bucle debe detenerse inmediatamente.
Desafío
FácilLee dos líneas de entrada:
- Una lista separada por comas de números (p. ej.,
4,8,15,16,23,42) - Un número objetivo para buscar
Usa un bucle foreach para buscar en el array el número objetivo. Cuando lo encuentres, imprime Found [target] at index [index]! y usa break para salir del bucle inmediatamente.
Si el bucle termina sin encontrar el objetivo, imprime [target] not found.
Pista: Usa la sintaxis clave-valor en tu bucle foreach para rastrear el índice.
Ejemplo 1:
Si las entradas son 10,25,30,45,50 y 30, la salida debería ser:
Found 30 at index 2!Ejemplo 2:
Si las entradas son 5,10,15,20,25 y 20, la salida debería ser:
Found 20 at index 3!Ejemplo 3:
Si las entradas son 1,2,3,4,5 y 99, la salida debería ser:
99 not foundHoja de referencia
La instrucción break sale inmediatamente de un bucle y continúa la ejecución con el código después del bucle. Funciona con bucles for, while y foreach.
Ejemplo de uso de break para salir de un bucle anticipadamente:
<?php
$numbers = [3, 7, 2, 9, 5, 1];
foreach ($numbers as $num) {
if ($num === 9) {
echo "Found 9!\n";
break;
}
echo "Checking $num\n";
}
echo "Search complete";
?>Salida:
Checking 3
Checking 7
Checking 2
Found 9!
Search completeUna vez que se ejecuta break, el bucle se detiene inmediatamente y los elementos restantes no se procesan.
Pruébalo tú mismo
<?php
// Leer la entrada
$numbers = explode(',', trim(fgets(STDIN)));
$target = trim(fgets(STDIN));
// TODO: Escribe tu código a continuación
// Usa un bucle foreach con sintaxis clave-valor para buscar el objetivo
// Cuando lo encuentres, imprime "Found [target] at index [index]!" y rompe
// Si no se encuentra después del bucle, imprime "[target] not found"
?>Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos
4Comparison & Logical Operators
Comparison OperatorsEquality & IdentityLogical Operators Part 1Logical Operators Part 2Recap - Simple Logic2Variables and Data Types
NumbersStrings and QuotesBooleansNaming ConventionsRecap - Variable InitEmpty VariablesString ConcatenationGetting User InputCast to Different Types5Conditional Logic
If StatementIf - ElseThe Ternary OperatorNull Coalescing OperatorSwitch StatementRecap - Making Decisions3Basic Operators
Arithmetic OperatorsModulo OperatorExponentiation OperatorCombined AssignmentIncrement/DecrementOperator PrecedenceRecap - Simple CalculationsString Operators