Curso de PHP – Estruturas de Repetição While e Do While

Estruturas de Repetição

Uma estrutura de repetição permite repetir um comando ou bloco de comandos diversas vezes, automaticamente, de modo a permitir que código seja reutilizado e eliminando a necessidade de reescrever diversas vezes os mesmos comandos que precisam ser repetidos. Nesta aula vamos estudar as estruturas de repetição While e Do .. While. Nas próximas aulas vamos abordar as estruturas de repetição For e Foreach. Estrutura de Repetição While A estrutura de repetição while permite executar repetidas vezes um bloco de comandos enquanto uma condição testada retorna verdadeiro. Quando a condição testada retorna falso, a repetição dos comandos (chamada de loop) é encerrada e o programa segue seu fluxo normal de execução. Sintaxe:
While (expressão_testada) {
Bloco de comandos
}
Exemplo: Vamos criar um programa que imprima na tela os números de 1 a 20:
<?php
$num = 1;
while ($num < 31) {
                echo "$num <br/>";
                $num++;
}
?>
Note o uso da instrução $num++, que é usada para incrementar o valor da variável testada. Caso não utilizemos essa instrução de incremento, o valor da variável permanecerá sempre em 1 (valor inicial dela), e o programa nunca encerrará, pois a condição testada sempre retornará verdadeiro. Teremos então o famoso “loop infinito”, que é na maioria dos casos um erro de programação. Fique atento a esse detalhe! Estrutura de Repetição Do .. While A estrutura do .. while difere da estrutura while apenas pelo fato de que a estrutura do .. while sempre executará o bloco de comandos associado ao menos uma vez, enquanto a estrutura while executa o bloco de comandos zero ou mais vezes – se logo no primeiro teste condicional ele já retornar falso, nenhum comando é executado. Então, caso você precise que o bloco de comandos seja executado ao menos uma vez em uma estrutura de repetição, use o comando do .. while. Sintaxe:
do {
Comandos
} while (expressão_testada);
Exemplo:
<?php
$num = 10;
while ($num < 10) {
                echo "Executado pelo while: $num <br/>";
                $num++;
}
do {
                echo "Executado pelo do..while: $num <br/>";
} while ($num < 10);
?>
Neste exemplo, ao testarmos o valor da variável $num, que vale 10, com o comando while, temos um valor falso logo de início, e portanto o bloco de comandos associado não será executado. Porém, ao testarmos a mesma variável com do .. while, o bloco de comandos é executado a primeira vez e só então a expressão será avaliada, retornando falso e interrompendo o loop. Na próxima aula veremos as estruturas de repetição for e foreach.
Sobre Fábio dos Reis (1097 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


*