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 loop antecipadamente, antes que ele termine naturalmente. A instrução break permite fazer exatamente isso. Ela interrompe imediatamente o loop e continua com o código depois dele.
Imagine percorrer um array em busca de um valor específico. Depois que você o encontra, não faz sentido verificar os elementos restantes. Usar break evita 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 completamente do loop, e a execução salta para "Search complete".
A instrução break funciona com todos os tipos de loop: for, while e foreach. Ela é 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írgulas (por exemplo,
4,8,15,16,23,42) - Um número-alvo para pesquisar
Use um loop foreach para pesquisar o número-alvo no array. Quando encontrá-lo, imprima Found [target] at index [index]! e use break para sair imediatamente do loop.
Se o loop for concluído sem encontrar o alvo, imprima [target] not found.
Dica: Use a sintaxe de chave-valor no seu loop foreach para acompanhar o índice.
Exemplo 1:
Se as entradas forem 10,25,30,45,50 e 30, a saída deverá ser:
Found 30 at index 2!Exemplo 2:
Se as entradas forem 5,10,15,20,25 e 20, a saída deverá ser:
Found 20 at index 3!Exemplo 3:
Se as entradas forem 1,2,3,4,5 e 99, a saída deverá ser:
99 not foundExperimente você mesmo
<?php
// Ler entrada
$numbers = explode(',', trim(fgets(STDIN)));
$target = trim(fgets(STDIN));
// TODO: Escreva seu código abaixo
// Use um loop foreach com sintaxe de chave-valor para buscar o target
// Quando encontrado, imprima "Found [target] at index [index]!" e break
// Se não for 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
4Operadores de Comparação e Lógicos
Operadores de ComparaçãoIgualdade e IdentidadeOperadores Lógicos - Parte 1Operadores Lógicos - Parte 2Revisão - Lógica Simples2Variáveis e Tipos de Dados
NúmerosStrings e AspasBooleanosConvenções de NomenclaturaRevisão - Inicialização de VariáveisVariáveis VaziasConcatenação de StringsObtendo Entrada do UsuárioConversão para Diferentes Tipos5Lógica Condicional
Instrução IfIf - ElseO Operador TernárioOperador de Coalescência NulaInstrução SwitchRecapitulação - Tomando Decisões8Laços de Repetição
Laço ForLaço WhileLaço ForeachRepetição com Chaves e ValoresInstrução BreakInstrução ContinueRecapitulação - Iterando sobre Dados3Operadores Básicos
Operadores AritméticosOperador MóduloOperador de ExponenciaçãoAtribuição CombinadaIncremento/DecrementoPrecedência de OperadoresRevisão - Cálculos SimplesOperadores de StringPratique por conta própria: Compilador de PHP online