PHP: Laço for

Os laços permitem que você execute o mesmo código repetidamente. Os laços while e do…while, são uteis para um propósito geral, e os mais especializados como o for, é útil quando você deseja executar o mesmo código um número conhecido de vezes.

Este artigo explica como o PHP trabalha com o laço for, e mostra alguns exemplos do laço.

Sintaxe do laço for

O loop for tem a seguinte sintaxe geral:


    for ( expression1; expression2; expression3 ){
             // Este código executa enquanto expression2 for verdadeira
    }
    // Este código executa depois que o laço for finalizado

Você pode ver que os laços for são mais complexos que o laço while. Considerando que um laço whiletem uma expressão entre parênteses, e o for tem 3 expressões separadas por ponto-e-vírgula.

Veja como funciona o laço for:

1. A primeira execução do laço, o PHP avalia a expression1. Esta expressão é conhecida como ainicializador, e normalmente é usada para configurar uma variável de contador para o laço.

2. No início de cada iteração do laço, a expression2 é testada. Se for true, o laço continua e o código dentro das chaves ({}) é executado. Se for false, ele deixa de executar o laço, e parte para o código que estiver depois do fechamento da chave. A expression2 é conhecida como teste do laço e tem a mesma finalidade que a única expressão do while.

3. Após cada iteração, o PHP avalia o expression3. Essa expressão é conhecida como expressão de cálculo e normalmente é usada para alterar a variável do contador.

Alguns exemplos do laço for

Os laços for são principalmente usados para executar um bloco de código um número conhecido de vezes. Aqui temos um exemplo simples:


          for ( $i = 1; $i <= 5; $i++ ) {
              echo "Contando $i...<br />";
          }

          echo "Terminado!";

Quando o código é executado, exibe o seguinte:

Primeiro exemplo do laço for

Você pode ver como as três expressões do laço for, tornam mais fácil criar e incrementar a variável do contador, por ser um laço que executa um número conhecido de vezes.

Você não precisa apenas incrementar, como mostra os seguintes exemplos:


         // Contado de 5 a 1

         for ( $i = 5; $i >= 1; $i-- ) {
             echo "$i...<br />";
         }

         echo "Terminado!<br /><br />";

         // Multiplicando por 2 até 40

         for ( $num = 1; $num < 40; $num *= 2 ) {
              echo "$num...<br />";
         }

         echo "Terminado!<br />";

O código acima exibe o seguinte:

Segundo exemplo do laço for

Um exemplo real: gerar senhas

Digamos que você queria gerar uma senha de 8 caracteres aleatórios para um usuário. Um laço for é perfeito aqui, pois você sabe de antemão quantas vezes o laço será executado (8 vezes no caso):


         $password = "";

         for ( $i = 0; $i < 8; $i++ ) {
             $password .= chr ( rand ( 0, 25 ) + 97 );
         }

         echo "Seu novo password é : $password";

Ele exibe algo como:

Terceiro exemplo do laço for

Expressões do laço for são opcionais

É importante ressaltar que cada uma das três expressões do laço for é opcional. (Se você não colocar a expressão de teste do laço, então o padrão é true, fazendo um laço infinito). Um exemplo:


         $num1 = 1;
         $num2 = 5;

         for ( ; $num1 <= $num2; $num1++ ) {
             echo "$num1...<br />";
         }

         echo "Terminado!<br /><br />";

Resultado:

Quarto exemplo do laço for

Aqui temos um laço for infinito (que vai ser executado para sempre a menos que você o pare de outra forma):


         for ( ; ; ){
             // Este código executa infinitamente
         }

Agora você viu como o PHP trabalha com laços. Você aprendeu a sintaxe do laço for, viu alguns exemplos e explorou algumas expressões opcionais do laço for.

Fonte: http://www.treinaweb.com.br/ler-artigo/19/php:-laco-for

Deixe um comentário