Mini Curso PHP, PHP
- 17/06/2008
Mini curso de PHP (Parte 7) – COMANDOS DE REPETIÇÃO
Comandos de repetição (loops)
Como o nome já diz, comandos de repetição repetem determinado bloco de código. Existem várias formas para fazer esta repetição.
- while
- do… while
- for
Vou explicar as três formas usando o mesmo exemplo: Mostrar na tela os números de 1 a 10. Ok?
WHILE
Este é o laço de repetição mais simples. Ele testa uma condição e enquanto (while) a condição for verdadeira, ele repete seu conteúdo. Uma coisa importante é que se a condição for falsa, ele NÃO entra no while.
WHILE significa enquanto. Então leríamos assim: Enquanto a condição seja verdadeira, faça as instruções.
Mostrarei a sintaxe que eu uso. A que fica com uma melhor legibilidade. Caso queira ver mais sintaxes acesse php.net.
Veja o exemplo que foi proposto usando while:
-
";
-
}
-
?>
-
Explicação por linha:
2) Inicializei uma variável que vai servir como um contador.
3) Inicio o while e faço a seguinte condição: Enquanto a minha variável de contador for MENOR ou IGUAL a 10
4) Informei o que será repetido enquanto a minha condição for verdadeira.
Você lembra do ++? Vimos ele na parte 5 do mini curso. Ele incrementa a variável.
Lembra do .(ponto)? Ele concatena (junta) strings.
Neste caso, eu estou mostrando na tela o contador+1 e colocando um
, para dar uma quebra de linha.
5) Finalizei o while
Perceba que, se inicializarmos o contador com 11, a linha 4 não será executada nenhuma vez. Pelo fato de que a condição será falsa.
Perceberam como é fácil?
Um outro exemplo de aplicação do while muito utilizado é: Você seleciona os dados de um banco de dados e ENQUANTO não acabar os registros, você vai mostrá-los na tela.
DO… WHILE
Ele é muito semelhante ao while, porém, ele SEMPRE executa alguma coisa antes de testar a condição.
DO significa faça. Então leríamos assim: Faça as instruções enquanto a condição seja verdadeira.
Mostrarei a sintaxe que eu uso. A que fica com uma melhor legibilidade. Caso queira ver mais sintaxes acesse php.net.
Veja o exemplo que foi proposto usando while:
-
";
-
} while($i <= 10);
-
?>
-
Explicação por linha:
2) Inicializei uma variável que vai servir como um contador.
3) Inicio o comando do…while
4) Informei o que será feito.
5) Finalizei o do…while informando a seguinte condição: Enquanto a minha variável de contador for MENOR ou IGUAL a 10
Você percebe que o do…while SEMPRE vai rodar seu conteúdo ao menos uma vez? Imagina que inicializamos o contador com 11.
O que vai acontecer? Ele vai imprimir na tela “12” e vai sair do do…while, pois a condição será falsa.
FOR
O for é o laço de repetição mais complexo, ou melhor, menos fácil.
Lembra que no while e no do…while inicializamos uma variável fora do comando? E a incrementávamos(com o ++) dentro do comando? No caso do for, inicializaremos a variável e faremos o incremento / decremento dentro do próprio comando.
Mostrarei a sintaxe que eu uso. A que fica com uma melhor legibilidade. Caso queira ver mais sintaxes acesse php.net.
-
";
-
}
-
?>
-
Explicação por linha:
2) Inicializei o for e já defino a variável que será o contador. Informo a condição e como o contador será incrementado.
3) Informo os comandos que serão executados enquanto a condição seja verdadeira.
4) Finalizo o for.
QUEBRA DE FLUXO
Podemos quebrar o fluxo do nosso loop. Podemos interromper ou iniciar o loop novamente.
BREAK (já visto em switch, na aula 6)
Ele PARA a execução do loop.
CONTINUE
Ao contrário do break, ele inicial o loop novamente.
Muito fácil trabalhar com loops né??
Agora faça o seguinte, poste aqui nos comentários, um script que imprima na tela a tabuada do 4. Usando WHILE, depois com DO…WHILE e depois com FOR.
Qualquer dúvida só postar…
Abraços



9 Comentários to “Mini curso de PHP (Parte 7) – COMANDOS DE REPETIÇÃO”
Meu marido eh o cara!! Fala serio!!!
Te amo amorrrr
Por Ká (1 comments) em 23/06/2008
WHILE:
$tab = 4;
$X = 1;
while ($X < = 10) {
echo $tab*$X++,”
“;
}
Por Diego (15 comments) em 25/06/2008
DO WHILE
$tab = 4;
$X = 1;
do {echo $tab*$X++;
}while ($X < = 10) {
Por Diego (15 comments) em 25/06/2008
FOR
for ($X = 1;$tab = 4; $X < = 10; $X++) {
echo $X*$tab;
Por Diego (15 comments) em 25/06/2008
}
Por Diego (15 comments) em 25/06/2008
Fala Diego..
while e do…while estao certinho..
O for vc usou o $tab na condição… e na verdade é o proprio $x.
Achei muito legal você ter usado a variável $tab. Não imaginei que alguem faria assim…
Por Marcelo Sabadini (109 comments) em 25/06/2008
$tab = 4;
for ($X = 1;$X < = 10; $X++) {
echo $X*$tab;
é assim o for correto?
Por Diego (15 comments) em 25/06/2008
Certinho kra.. mas.. vc esta esquecendo de fechar os loops. Faltou só um } no final. Mas a ideia esta correta kra…
Outra coisa legal é que isso que vc esta treinando em PHP, vc vai usar em Javascript praticamente da mesma forma…
Um grande abraço!!
Por Marcelo Sabadini (109 comments) em 25/06/2008
Oi marcelo, estou gostando muito do curso… Suas explicações estão bem claras.
Mas não consigo ver nenhuma imagem (os exemplos), os links estão quebrados (desde a primeira aula)… Você poderia dar uma olhadinha nisso?
Valeu !!!
Por Andrea Alves (1 comments) em 20/11/2008