🚀 O que você vai aprender nesta aula:
- O que é o comando BREAK e como usá-lo para evitar processamento inútil.
- Como o CONTINUE ajuda a pular iterações e limpar seu código de
IFsgigantes. - A diferença prática (e visual) entre interromper e pular rodadas de um loop.
- Dica Sênior: Como parar laços aninhados (um dentro do outro) de uma vez só.
Fala, dev! Agora que você já sabe criar laços de repetição (como FOR e WHILE), você ganhou o poder de automatizar tarefas. Mas, como diz o ditado: com grandes poderes, vêm grandes responsabilidades.
E se você precisar parar um laço pela metade porque já encontrou o que procurava? Ou se quiser ignorar um item específico da lista e pular direto para o próximo? É aí que entram os super-heróis do controle de fluxo: break e continue.
O que é o comando BREAK em PHP?
O comando break no PHP serve para encerrar imediatamente a execução de um laço de repetição (WHILE, FOR, FOREACH ou DO WHILE) ou estrutura condicional (SWITCH). Assim que o PHP lê a palavra "break", ele abandona o loop atual na mesma hora e continua executando o resto do programa.
Você já cruzou com ele na aula de SWITCH, mas nos loops ele ganha uma nova dimensão: a de otimização de performance.
Exemplo 1: Otimizando um laço FOR
Imagine que você tem uma lista de 1.000.000 de números e quer encontrar o primeiro número que seja múltiplo de 11 e de 13 ao mesmo tempo. Veja como o break salva o servidor de um colapso:
<?php
for ($count = 1; $count <= 1000000; $count++) {
// Se for múltiplo de 11 e 13...
if ($count % 11 == 0 && $count % 13 == 0) {
echo "Achei! O número é o $count";
break; // O loop PARA AQUI. Os outros números não serão testados!
}
}
?>
⚠️ Pense bem: Sem o break, o PHP acharia a resposta no número 143, mas continuaria processando os outros 999.857 números à toa. Isso é o que chamamos de código ineficiente.
Exemplo 2: O Loop Infinito Controlado (WHILE true)
Muitas vezes, não sabemos quantas vezes o loop vai rodar até a condição ser atingida. Nesses casos, criamos um loop que "roda para sempre", mas o encerramos por dentro usando o break.
<?php
$count = 1;
while (true) { // Vai rodar para sempre?
if ($count % 12 == 0 && $count % 21 == 0) {
echo "O MMC entre 12 e 21 é: $count";
break; // ...Não! O break garante a saída.
}
$count++;
}
?>
Tempo é dinheiro. Aprenda do jeito certo. ⏳
Ficar caçando erros de loops infinitos ou tentar juntar pedaços de tutoriais desatualizados atrasa sua carreira. Se você quer economizar meses de estudo, precisa de um método sequencial e lógico.
A Apostila PHP Progressivo entrega exercícios resolvidos que moldam seu raciocínio lógico direto ao ponto.
Acelerar Meu Aprendizado →O que é o comando CONTINUE em PHP?
O comando continue serve para interromper apenas a iteração (rodada) atual do loop, ignorando todo o código que está abaixo dele e pulando diretamente para a próxima avaliação do laço de repetição. O loop, no entanto, continua vivo.
Sabe aquele momento que você quer filtrar algo indesejado e apenas "passar reto"? É pra isso que ele serve.
Exemplo Prático: O Jogo do PIM
No clássico jogo do PIM, contamos os números, mas quando encontramos um múltiplo de 4, falamos "PIM" no lugar do número.
<?php
for ($count = 1; $count <= 20; $count++) {
if ($count % 4 == 0) {
echo "PIM <br>";
continue; // Ignora o 'echo' lá embaixo e pula pro próximo número
}
echo "$count <br>";
}
?>
🛠️ Por que isso é profissional? O continue evita que você crie estruturas de if/else gigantes. Ele atua como uma cláusula de guarda: "Se for múltiplo de 4, imprima PIM, pule a rodada e nem olhe para o resto do código".
🔥 Dica Avançada (Conteúdo Sênior)
Em projetos reais, é comum termos loops dentro de loops (laços aninhados). O que acontece se você der um break; no loop de dentro? Ele só para o de dentro.
Mas o PHP permite que você diga quantos níveis quer quebrar ou pular usando break N; ou continue N;.
<?php
for ($i = 0; $i < 5; $i++) {
for ($j = 0; $j < 5; $j++) {
if ($i == 2 && $j == 2) {
break 2; // Quebra os DOIS loops de uma vez!
}
}
}
?>
Isso é programação em alto nível!
Resumo: Qual usar e quando?
- 🛑 Use BREAK quando: Você encontrou o dado que estava procurando (num banco de dados, num array) ou um erro crítico aconteceu e não faz sentido continuar verificando o resto.
- ⏭️ Use CONTINUE quando: Você quer descartar itens inválidos ou aplicar regras específicas, mas precisa que o loop continue rodando até o final da fila.
Cuidado com os Erros de Principiante!
- ⚠️ WHILE sem incremento + CONTINUE: Se você usar um
continuedentro de um WHILE antes de incrementar o contador, o contador nunca vai subir e você criará um loop infinito travando a página. - ⚠️ Usar Break no lugar errado: Lembrar que ele aborta a missão. Não o use se a intenção for apenas pular um valor.
Nenhum comentário:
Postar um comentário