Curso de PHP – As instruções Break e Continue

As instruções Break e Continue em PHP

Nesta lição vamos aprender a usar as instruções break e continue no PHP, que servem para interromper um loop em uma estrutura de repetição, porém de formas diferentes entre si.

Instrução break

A instrução break permite interromper a execução dos comandos for, foreach, while, do..while e switch em qualquer ponto do bloco de comandos. Desta forma, podemos avaliar uma expressão e de acordo com o seu resultado, encerrar o loop imediatamente.

Vamos a um exemplo de seu uso. Neste exemplo, o laço for tenta imprimir os números de 1 a 50 na tela, porém ao chegar no número 35 o loop é interrompido pelo uso da instrução break.:

<?php
for ($x=1; $x <= 30; $x++) {
  print(“O valor de x é $x <br/>”);
  if ($x == 15) {
      break;
  }
}
?>

Cursod e PHP - Instrução break no loop For

Se houverem estruturas de controle aninhadas em seu código, podemos passar para a instrução break um valor que indicará quantos níveis devem ser encerrados. Veja o exemplo a seguir:

<?php
 for ($y=1; $y <=10; $y++) {
    for ($x=1; $x <= 10; $x++) {
       if ($y == 5) {
          print ("Loop encerrado");
          break 2;
       }
       print($x);
       if ($x % 10 == 0){
          print ("<br/>");
       }
   }
 }
?>

Resultado:

Curso de PHP - instrução break aninhado

Instrução continue

A instrução continue, assim como a instrução break, permite que a execução do loop seja interrompida. Porém, diferentemente do que acontece com a instrução break, o loop não é encerrado – apenas a iteração atual é interrompida, a partir do ponto onde se encontra a instrução, e o loop prossegue na próxima iteração.

Exemplo:

<?php
for ($x=1; $x <= 10; $x++) {
  if (($x == 4) || ($x == 6)) {
     continue;
  }
  print(“O valor de x é $x <br/>”);
}
?>

Curso de PHP - instrução continue no laço for

Da mesma forma que ocorre com a instrução break, se houverem estruturas de controle aninhadas em seu código, podemos passar para a instrução continue um valor que indicará quantos níveis devem ser afetados. Veja o exemplo a seguir:

<?php
 for ($y=1; $y <=10; $y++) {
    for ($x=1; $x <= 10; $x++) {
       if ($y == 5) {
          print ("Nesta linha não são mostrados os números <br/>");
          continue 2;
      }
      print($x);
      if ($x % 10 == 0){
         print ("<br/>");
      }
   }
 }
?>

Veja o resultado a seguir :

Curso de PHP - Instrução continue em níveis

Próximo: Estruturas de Repetição WHILE e DO WHILE

 

Sobre Fábio dos Reis (1195 Artigos)
Fábio dos Reis trabalha com tecnologias variadas há mais de 30 anos, tendo atuado nos campos de Eletrônica, Telecomunicações, Programação de Computadores e Redes de Dados. É um entusiasta de Ciência e Tecnologia em geral, adora Viagens e Música, e estuda idiomas, além de ministrar cursos e palestras sobre diversas tecnologias em São Paulo e outras cidades do Brasil.

Escreva um comentário

Seu e-mail não será divulgado


*