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

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

Sobre Fábio dos Reis (1198 Artigos)
Fábio dos Reis trabalha com tecnologias variadas há mais de 25 anos, tendo atuado nos campos de Eletrônica, Telecomunicações, Programação de Computadores e Redes de Dados. É um entusiasta de Unix, Linux e Open Source em geral, adora Eletrônica e Astronomia, e estuda idiomas, além de ministrar cursos e palestras sobre diversas tecnologias em São Paulo e outras cidades do Brasil.
Contato: Website

Escreva um comentário

Seu e-mail não será divulgado


*