PHP - Tipos de Loop

Os loops em PHP são usados ​​para executar o mesmo bloco de código um determinado número de vezes. PHP suporta os seguintes quatro tipos de loop.

  • for - percorre um bloco de código um determinado número de vezes.

  • while - faz um loop em um bloco de código se e enquanto uma condição especificada for verdadeira.

  • do...while - faz um loop em um bloco de código uma vez e, em seguida, repete o loop enquanto uma condição especial for verdadeira.

  • foreach - percorre um bloco de código para cada elemento em uma matriz.

Vamos discutir sobre continue e break palavras-chave usadas para controlar a execução dos loops.

A instrução de loop for

A instrução for é usada quando você sabe quantas vezes deseja executar uma instrução ou um bloco de instruções.

Sintaxe

for (initialization; condition; increment){
   code to be executed;
}

O inicializador é usado para definir o valor inicial para o contador do número de iterações do loop. Uma variável pode ser declarada aqui para este propósito e é tradicional chamá-la de $ i.

Exemplo

O exemplo a seguir faz cinco iterações e altera o valor atribuído de duas variáveis ​​em cada passagem do loop -

<html>
   <body>
      
      <?php
         $a = 0;
         $b = 0;
         
         for( $i = 0; $i<5; $i++ ) {
            $a += 10;
            $b += 5;
         }
         
         echo ("At the end of the loop a = $a and b = $b" );
      ?>
   
   </body>
</html>

Isso produzirá o seguinte resultado -

At the end of the loop a = 50 and b = 25

A instrução do loop while

A instrução while executará um bloco de código se e enquanto uma expressão de teste for verdadeira.

Se a expressão de teste for verdadeira, o bloco de código será executado. Após a execução do código, a expressão de teste será avaliada novamente e o loop continuará até que a expressão de teste seja considerada falsa.

Sintaxe

while (condition) {
   code to be executed;
}

Exemplo

Este exemplo diminui um valor de variável em cada iteração do loop e o contador aumenta até atingir 10, quando a avaliação é falsa e o loop termina.

<html>
   <body>
   
      <?php
         $i = 0;
         $num = 50;
         
         while( $i < 10) {
            $num--;
            $i++;
         }
         
         echo ("Loop stopped at i = $i and num = $num" );
      ?>
      
   </body>
</html>

Isso produzirá o seguinte resultado -

Loop stopped at i = 10 and num = 40

A instrução do ... while loop

A instrução do ... while executará um bloco de código pelo menos uma vez - em seguida, repetirá o loop enquanto a condição for verdadeira.

Sintaxe

do {
   code to be executed;
}
while (condition);

Exemplo

O exemplo a seguir incrementará o valor de i pelo menos uma vez e continuará incrementando a variável i, contanto que ela tenha um valor inferior a 10 -

<html>
   <body>
   
      <?php
         $i = 0;
         $num = 0;
         
         do {
            $i++;
         }
         
         while( $i < 10 );
         echo ("Loop stopped at i = $i" );
      ?>
      
   </body>
</html>

Isso produzirá o seguinte resultado -

Loop stopped at i = 10

A instrução de loop foreach

A instrução foreach é usada para percorrer arrays. Para cada passagem, o valor do elemento atual da matriz é atribuído a $ value e o ponteiro da matriz é movido por um e na próxima passagem o próximo elemento será processado.

Sintaxe

foreach (array as value) {
   code to be executed;
}

Exemplo

Experimente o exemplo a seguir para listar os valores de uma matriz.

<html>
   <body>
   
      <?php
         $array = array( 1, 2, 3, 4, 5);
         
         foreach( $array as $value ) {
            echo "Value is $value <br />";
         }
      ?>
      
   </body>
</html>

Isso produzirá o seguinte resultado -

Value is 1
Value is 2
Value is 3
Value is 4
Value is 5

A declaração de pausa

O PHP break palavra-chave é usada para terminar a execução de um loop prematuramente.

o breakinstrução está situada dentro do bloco de instrução. Dá a você controle total e sempre que quiser sair do loop, você pode sair. Depois de sair de um loop, uma instrução imediata para o loop será executada.

Exemplo

No exemplo a seguir, o teste de condição torna-se verdadeiro quando o valor do contador atinge 3 e o loop termina.

<html>
   <body>
   
      <?php
         $i = 0;
         
         while( $i < 10) {
            $i++;
            if( $i == 3 )break;
         }
         echo ("Loop stopped at i = $i" );
      ?>
   
   </body>
</html>

Isso produzirá o seguinte resultado -

Loop stopped at i = 3

A declaração continue

O PHP continue palavra-chave é usada para parar a iteração atual de um loop, mas não termina o loop.

Assim como o break declaração o continueinstrução está situada dentro do bloco de instrução que contém o código que o loop executa, precedido por um teste condicional. Para o encontro do passecontinue , o resto do código do loop é ignorado e a próxima passagem começa.

Exemplo

No exemplo a seguir, o loop imprime o valor de array, mas para a qual a condição se torna verdadeira, ele simplesmente pula o código e o próximo valor é impresso.

<html>
   <body>
   
      <?php
         $array = array( 1, 2, 3, 4, 5);
         
         foreach( $array as $value ) {
            if( $value == 3 )continue;
            echo "Value is $value <br />";
         }
      ?>
   
   </body>
</html>

Isso produzirá o seguinte resultado -

Value is 1
Value is 2
Value is 4
Value is 5