Instrução Break
Parte da seção Fundamentos do Journey de PHP da Coddy. Lição 51 de 71.
Às vezes, você precisa sair de um laço mais cedo, antes que ele termine naturalmente. A instrução break permite que você faça exatamente isso — ela interrompe o laço imediatamente e continua com o código após ele.
Imagine procurando um valor específico em um array. Assim que você o encontra, não há motivo para verificar os elementos restantes. Usar break economiza iterações desnecessárias.
<?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";
?>Isso produz:
Checking 3
Checking 7
Checking 2
Found 9!
Search completeObserve que 5 e 1 nunca são verificados. No momento em que o loop encontra 9, break sai do loop completamente, e a execução salta para "Search complete".
A instrução break funciona com todos os tipos de loop — for, while e foreach. É particularmente útil quando você está procurando algo ou quando uma determinada condição significa que o loop deve parar imediatamente.
Desafio
FácilLeia duas linhas de entrada:
- Uma lista de números separados por vírgula (ex.:
4,8,15,16,23,42) - Um número alvo para buscar
Use um loop foreach para buscar no array o número alvo. Quando encontrá-lo, imprima Found [target] at index [index]! e use break para sair do loop imediatamente.
Se o loop terminar sem encontrar o alvo, imprima [target] not found.
Dica: Use a sintaxe chave-valor no seu loop foreach para rastrear o índice.
Exemplo 1:
Se as entradas forem 10,25,30,45,50 e 30, a saída deve ser:
Found 30 at index 2!Exemplo 2:
Se as entradas forem 5,10,15,20,25 e 20, a saída deve ser:
Found 20 at index 3!Exemplo 3:
Se as entradas forem 1,2,3,4,5 e 99, a saída deve ser:
99 not foundExperimente você mesmo
<?php
// Lê a entrada
$numbers = explode(',', trim(fgets(STDIN)));
$target = trim(fgets(STDIN));
// TODO: Escreva seu código abaixo
// Use um loop foreach com sintaxe chave-valor para procurar o alvo
// Quando encontrado, imprima "Found [target] at index [index]!" e quebre
// Se não encontrado após o loop, imprima "[target] not found"
?>Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições 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 OperatorsPratique por conta própria: Compilador de PHP online