Laços de Repetição e Controle de Fluxo em PHP 🐘 Etapa 05

 Seja muito bem-vindo à Academy Code Christ!


🌍 Academy Code Christ está disponível em vários idiomas.
Fique à vontade para usar o tradutor na Barra lateral (Sidebar) e aprender no seu idioma.

PHP 🐘 Etapa 05
Laços de Repetição e Controle de Fluxo



📚 Continue sua jornada de aprendizado


A Academy Code Christ oferece trilhas de aprendizado em diferentes tecnologias. Explore os cursos, acompanhe as aulas e avance em sua jornada de conhecimento acessando os menus correspondentes:



💻 Pratique o que você aprende


🎯 O que você vai aprender nesta aula?

Imagine que você queira exibir todos os números de 1 a 100 na tela.


Você poderia escrever:

echo 1;

echo 2;

echo 3;

// ...

echo 100;

 

Mas seriam 100 linhas de código para uma tarefa simples — o que é totalmente inviável.

É para resolver esse tipo de situação que existem os laços de repetição (também chamados de loops).

Com apenas três ou quatro linhas de código, o PHP consegue fazer centenas, milhares ou até milhões de repetições automáticas.


O que são Laços de Repetição


Os laços de repetição permitem executar o mesmo bloco de código diversas vezes, até que uma condição deixe de ser verdadeira.

Eles são fundamentais em:

●     Listagens (como exibir produtos, usuários etc.);

●     Processamento em massa de dados;

●     Testes repetitivos;

●     Geração automática de relatórios.


O PHP possui quatro tipos principais de laços de repetição:

1.    while

2.    do...while

3.    for

4.    foreach (específico para arrays)


Vamos analisar cada um com calma e exemplos práticos.


Estrutura while

O laço while executa enquanto uma condição for verdadeira.

Sintaxe:

while (condição) {

    // código que será executado

}

 

Exemplo:

<?php

$contador = 1;

 

while ($contador <= 10) {

    echo "Número: $contador <br>";

    $contador++; // incrementa em 1

}

?>

 

Saída:

Número: 1

Número: 2

...

Número: 10

 

Explicando:

●     O PHP verifica se $contador <= 10 é verdadeiro.

●     Enquanto for, executa o bloco e incrementa $contador.

●     Quando o contador chega a 11, a condição vira falsa, e o loop para.


⚠️ Cuidado com loops infinitos!

Se você esquecer de atualizar a variável de controle, o while continuará para sempre, travando o script.


Estrutura do…while

A diferença entre while e do...while é simples, mas importante:

●     while verifica primeiro a condição antes de executar.


●     do...while executa primeiro, depois verifica.

Exemplo:

<?php

$contador = 1;

 

do {

    echo "Contador: $contador <br>";

    $contador++;

} while ($contador <= 5);

?>

 

Saída:

Contador: 1

Contador: 2

Contador: 3

Contador: 4

Contador: 5

 

Mesmo que a condição seja falsa desde o início, o do...while executa pelo menos uma vez.

Teste você mesmo, substituindo $contador = 10 e condição ($contador <= 5).


Estrutura for

O for é provavelmente o laço mais usado.
 Ele é ideal quando já sabemos quantas vezes vamos repetir algo.

Sintaxe:

for (início; condição; incremento) {

    // código

}

 

Exemplo:

<?php

for ($i = 1; $i <= 5; $i++) {

    echo "Valor de i: $i <br>";

}

?>

 

Saída:

Valor de i: 1

Valor de i: 2

Valor de i: 3

Valor de i: 4

Valor de i: 5

 

●     Início: define a variável inicial ($i = 1)

●     Condição: diz quando deve parar ($i <= 5)

●     Incremento: altera a variável a cada ciclo ($i++)


Você pode alterar o incremento. Por exemplo, $i += 2 para contar de dois em dois.


Laços for Decrescentes e Personalizados


O laço for também pode ser usado para contar de trás para frente.

Exemplo:

<?php

for ($i = 10; $i >= 1; $i--) {

    echo "Contagem regressiva: $i <br>";

}

echo "Fim!";

?>

 

Saída:

Contagem regressiva: 10

Contagem regressiva: 9

...

Contagem regressiva: 1

Fim!

 

Essa estrutura é ótima para mostrar contagens, cronômetros ou tarefas programadas que terminam em determinado ponto.


Estrutura foreach

O foreach foi criado especialmente para percorrer listas (arrays).
 É extremamente útil porque elimina a necessidade de lidar com índices manualmente.

Exemplo:

<?php

$nomes = array("Ana", "Bruno", "Carla", "Diego");

 

foreach ($nomes as $n) {

    echo "Nome: $n <br>";

}

?>

 

Saída:

Nome: Ana

Nome: Bruno

Nome: Carla

Nome: Diego

 

O PHP repete automaticamente o bloco para cada item do array, atribuindo o valor atual à variável $n.

Também é possível acessar chave e valor:

<?php

$idades = array("Ana" => 22, "Bruno" => 25, "Carla" => 19);

 

foreach ($idades as $nome => $idade) {

    echo "$nome tem $idade anos <br>";

}

?>

 

Saída:

Ana tem 22 anos

Bruno tem 25 anos

Carla tem 19 anos

 


Comandos de Controle de Fluxo: break e continue


Para controlar os laços durante a execução, o PHP oferece dois comandos muito úteis:

1. break

Encerra o loop imediatamente, mesmo se a condição ainda for verdadeira.

<?php

for ($i = 1; $i <= 10; $i++) {

    if ($i == 5) {

        break;

    }

    echo "Número: $i <br>";

}

?>

 

Saída:

Número: 1

Número: 2

Número: 3

Número: 4

 

Quando $i chega a 5, o break interrompe o laço.


2. continue

Pula a iteração atual e vai direto para a próxima.

<?php

for ($i = 1; $i <= 6; $i++) {

    if ($i == 3) {

        continue;

    }

    echo "Número: $i <br>";

}

?>

 

Saída:

Número: 1

Número: 2

Número: 4

Número: 5

Número: 6

 

O número 3 foi “ignorado” porque o continue fez o PHP pular aquela iteração.


Exemplo Prático — Tabuada com Laço for


Vamos colocar na prática:

<?php

$numero = 7;

 

echo "<h3>Tabuada do $numero</h3>";

 

for ($i = 1; $i <= 10; $i++) {

    $resultado = $numero * $i;

    echo "$numero x $i = $resultado <br>";

}

?>

 

Saída:

Tabuada do 7

7 x 1 = 7

7 x 2 = 14

...

7 x 10 = 70

 

Um exemplo clássico que mostra o poder da repetição automática.


Exemplo Prático — Somando Valores


Agora, vamos usar o while para somar os números de 1 a 100.

<?php

$soma = 0;

$i = 1;

 

while ($i <= 100) {

    $soma += $i;

    $i++;

}

 

echo "A soma dos números de 1 até 100 é $soma.";

?>

 

Saída:

A soma dos números de 1 até 100 é 5050.

 

Antes de estudar loops, você teria que digitar essa soma manualmente — agora, o código fez tudo sozinho!


Exemplo com foreach — Listando Produtos


<?php

$produtos = [

    ["nome" => "Teclado", "preco" => 120],

    ["nome" => "Mouse", "preco" => 80],

    ["nome" => "Monitor", "preco" => 950],

    ["nome" => "Pen Drive", "preco" => 40]

];

 

$valorTotal = 0;

 

echo "<h3>Lista de Produtos</h3>";

 

foreach ($produtos as $p) {

    echo "Produto: " . $p["nome"] . " - R$ " . $p["preco"] . "<br>";

    $valorTotal += $p["preco"];

}

 

echo "<br><strong>Valor total: R$ $valorTotal</strong>";

?>

 

Esse pequeno sistema já simula o funcionamento de um carrinho de compras.
O foreach percorre cada item e soma o total automaticamente.


Dica Profissional — Aninhar Loops com Cuidado


É possível colocar um loop dentro de outro.
Por exemplo, uma tabuada completa:

<?php

for ($i = 1; $i <= 3; $i++) {

    echo "<h4>Tabuada do $i</h4>";

   

    for ($j = 1; $j <= 5; $j++) {

        echo "$i x $j = " . ($i * $j) . "<br>";

    }

    echo "<hr>";

}

?>

 

Repare como o código mostra múltiplas tabuadas, uma dentro da outra.
Mas atenção: aninhar loops consome mais processamento.
Use apenas quando for realmente necessário.


Boas Práticas no Uso de Loops


1.    Evite loops infinitos.
 Sempre garanta que a variável de controle será atualizada.

2.    Escolha o loop adequado.

○     Use while quando não souber quantas vezes vai repetir.

○     Use for quando souber exatamente quantas vezes.

○     Use foreach para percorrer arrays.


3.    Prefira clareza à complexidade.
 Um loop simples é mais legível e fácil de manter.

4.    Otimize loops longos.
 Se um loop precisa processar milhares de itens, verifique se há formas de reduzir ou filtrar os dados antes.


Controle Total do Fluxo


Os laços também podem ser combinados com condicionais, o que permite criar lógicas incrivelmente poderosas.

Por exemplo:

<?php

for ($i = 1; $i <= 20; $i++) {

    if ($i % 2 == 0) {

        echo "$i é par <br>";

    } else {

        echo "$i é ímpar <br>";

    }

}

?>

 

Saída:

1 é ímpar

2 é par

3 é ímpar

4 é par

...

 

Aqui combinamos operadores, condições e repetição — três das bases de toda lógica computacional.


Conclusão 


Nesta etapa, você aprendeu a repetir e automatizar tarefas com eficiência.
 Agora o PHP é capaz de:

●     Repetir blocos de código com while, do...while, for e foreach;

●     Controlar fluxos com break e continue;

●     Combinar loops com condicionais;

●     Criar listagens, cálculos e sistemas automatizados.


Compreender os laços é um marco importante: a partir dele, o PHP se transforma de um conjunto de instruções em um verdadeiro processador lógico.

Na próxima etapa, veremos como armazenar e trabalhar com grandes conjuntos de dados usando arrays — o complemento perfeito para tudo que aprendemos aqui.



Este conteúdo faz parte do Academy Code Christ. 

Um projeto criado para ajudar jovens e iniciantes a aprender programação do zero, de forma simples e gratuita.

Nossa missão é compartilhar conhecimento e incentivar mais pessoas a descobrir que também podem aprender tecnologia, criar projetos e desenvolver novas habilidades.
Todo o conteúdo é disponibilizado gratuitamente, de forma clara, prática e 
sem enrolação. 

Você pode apoiar o projeto se quiser 
com um café. 



Post a Comment

Postagem Anterior Próxima Postagem