Quando estamos desenvolvendo em PHP, muitas vezes nos deparamos com a necessidade de repetir uma série de instruções diversas vezes. Para tornar o código mais eficiente e reduzir a repetição de tarefas manuais, utilizamos as estruturas de repetição, também conhecidas como loops. Neste post veja estruturas de repetição em PHP.

As principais estruturas de repetição em PHP

FOR permite executar, uma quantidade predeterminada de vezes, trechos de códigos:

 <?php
 
 //Executa a linha do echo 10 vezes, incrementando uma unidade a variável $i  
 for($i = 0; $i < 10; $i++) {
   echo $i . "<br>";
 }

FOREACH permite percorrer arrays de forma mais simples:

 $diasSemana = array ( 
 "Segunda-feira", "Terça-feira", "Quarta-Feira", 
 "Quinta-feira", "Sexta-feira", "Sábado", "Domingo"
 );
 
 //armazena o valor do array na variável $dia a cada nova interação 
 foreach($diasSemana as $dia) {
   echo "O dia da semana é " . $dia . "<br>";
 }
 
 //para mostrar o index do array: 
 foreach($diasSemana as $index => $dia) {
   echo "O dia " .$index. " da semana é " . $dia . "<br>";
 } 

WHILE permite executar as declarações aninhadas repetidamente, enquanto a expressão do while forem avaliadas como TRUE:

 $condicao = true;

 while ($condicao) {
   $numeroSorteado = rand(1, 10); //a função rand() faz o sorteio dos números
   
   if($numeroSorteado === 7) { //verifica se o número sorteado é igual a 7
     echo "O número sorteado foi ";
     $condicao = false; //atribui false a variável $condicao para encerrar o laço
   }
   
   echo $numeroSorteado. " "; //mostra os números sorteados

DO WHILE é parecido com o laço while, com exceção que a expressão de avaliação é verificada ao final de cada iteração em vez de no começo:

 $total = 200; //valor inicial definido
 $desconto = 0.9; //desconto definido 

 do {
   $total *= $desconto; //é aplicado o desconto ($desconto) ao total ($total) 
 } while ($total > 100); //enquanto o total for maior do que 100
 
 echo $total;

Controle de Fluxo dentro de Loops: break e continue

Dentro das estruturas de repetição, você pode usar as instruções break e continue para controlar o fluxo da execução:

  • break: Interrompe completamente o loop, saindo dele.
  • continue: Pula a iteração atual e passa para a próxima.

Exemplo com break:

for ($i = 1; $i <= 10; $i++) {
    if ($i == 5) {
        break; // Sai do loop quando $i é 5
    }
    echo "Valor de i: " . $i . "<br>";
}

Exemplo com continue:

for ($i = 1; $i <= 5; $i++) {
    if ($i == 3) {
        continue; // Pula a iteração quando $i é 3
    }
    echo "Valor de i: " . $i . "<br>";
}

Quando usar cada estrutura?

  • while: Use quando você não sabe o número exato de repetições e depende de uma condição para continuar.
  • do...while: Use quando você precisa garantir que o bloco de código será executado pelo menos uma vez.
  • for: Ideal quando você conhece o número exato de iterações (como um contador).
  • foreach: A melhor opção para iterar sobre arrays ou coleções.

As estruturas de repetição são fundamentais no PHP para automatizar tarefas repetitivas e tornar o código mais eficiente. Dependendo do cenário, você pode escolher a estrutura que melhor atende à sua necessidade, seja iterar com base em uma condição, percorrer um array ou simplesmente repetir uma ação um número específico de vezes.

QUER APRENDER PHP ORIENTADO A OBJETOS OU APERFEIÇOAR O QUE JÁ SABE?

Então conheça o curso online que já ajudou milhares de pessoas a aprender a programar e desenvolver seus próprios projetos do ZERO e usando orientação a objetos de uma forma fácil de entender.

CLIQUE NA IMAGEM ABAIXO E SAIBA MAIS:

CLIQUE AQUI E SAIBA MAIS

Dúvidas ou sugestões sobre estruturas de repetição em PHP? Deixem nos comentários! Para mais dicas, acesse o nosso canal no YouTube:
https://youtube.com/criandobits

Tags: | | | |

Quer receber GRÁTIS o e-book "Como Formatar um Computador em 5 Minutos"?

Não enviamos spam. Seu e-mail está 100% seguro!

Sobre o Autor

Bene Silva Júnior
Bene Silva Júnior

Bacharel em Sistemas de Informação pelo Instituto Paulista de Pesquisa e Ensino IPEP. Apaixonado por tecnologias e games do tempo da vovó!

0 Comentários

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *