Curso de PHP – Estruturas de Repetição For e Foreach

Estruturas de Repetição For e Foreach em PHP

Na aula passada estudamos as estruturas de repetição While e Do..While em PHP. Vamos agora abordar o uso das estruturas de repetição For (laço for) e Foreach.

A estrutura for realiza a repetição do bloco de comandos de forma mais refinada do que as estruturas while, permitindo que o desenvolvedor programe a estrutura para que efetue o loop um número pré-definido de vezes, e além disso também permite que se escolha um valor de incremento diferente na própria declaração da estrutura, sem a necessidade de implementar esses parâmetros dentro do bloco de códigos.

Sintaxe:

for (var_controle; teste_variável; incremento) {
  Bloco de comandos
}

Onde:

Var_controle é uma variável que possui um valor inicial, o qual será avaliado apenas uma vez. É o ponto de partida da contagem de loops a serem realizados. Geralmente inicializamos essa variável dentro da própria estrutura do for.

Teste_variável é um teste a ser realizado a cada iteração do loop, e caso retorne falso, o loop é encerrado. Geralmente é um valor limite para a variável de controle, o qual ao ser atingido após incrementos ou decrementos sucessivos, encerra o loop.

Incremento é o valor que deve ser adicionado ou subtrtaído da variável de controle para que ela, após um número determinado de iterações, possa atingir o valor limite que é testado no parâmetro teste_variável.

Vamos a um exemplo. Queremos imprimir na tela os números de 1 a 15, um em cada linha:

<?php
for ($num = 1; $num <=15; $num++) {
    print ("$num <br>");
}
?> 

Note que nesse caso não precisamos declarar e atribuir a variável antes de usar a estrutura for (claro que podemos fazê-lo se necessário!). O comando print() será executado 15 vezes, pois a variável $num é inicializada com 1 e é incrementada de 1 em 1 até chegar em 15.

Exemplo 02: Vamos escrever um script que mostre no navegador todos os números pares entre 1 e 100, usando laço for e uma constante.

<?php
define("LIMITE", 100);
for ($num = 1; $num <= LIMITE; $num++) {
    if ($num % 2 == 0) {
        echo $num."<br>";
    }
}
?>

Estrutura de Repetição Foreach

A estrutura foreach nos permite realizar uma varredura completa em um array, retornando seus valores e / ou chaves ou executando operações sobre esses valores. Há duas sintaxes disponíveis para esse comando:

Sintaxe 1: Retornar apenas os valores do array:

foreach (array as variável) {
  Comandos
}

Sintaxe 2: Retornar os valores e suas respectivas chaves:

foreach (array as variável-chave => variável-valor) {
  Comandos
}

Vamos a alguns exemplos:

Exemplo 01: Criamos um array simples e visualizamos seu conteúdo com o comando foreach:

<?php
// criando um array para testes:
$vetor = array("SP","RJ","PE","AM","GO","SC");
// Visualizando o conteúdo do array:
foreach($vetor as $valores){
   print("$valores <br/>");
}
?>

 Laço Foreach em PHP

Exemplo 02: Vamos criar outro array e visualizar seus valores e chaves com o comando foreach:

<?php
// criando um array para testes:
$vetor = array("SP" => "São Paulo","RJ" => "Rio de Janeiro","PE" => "Recife",
"AM" => "Manaus","GO" => "Goiânia","SC" => "Florianópolis");
// Visualizando o conteúdo do array e suas chaves:
foreach ($vetor as $estado => $capital) {
  print("A capital de $estado é $capital <br/>");
}
?>

Veja o resultado abaixo:

Laço Foreach em PHP com MySQL

Se o array passado para o comando foreach for multidimensional, o conteúdo retornado também será um array. Veremos como tratar esse caso ao estudarmos mais a fundo os arrays em PHP.

 

Sobre Fábio dos Reis (1195 Artigos)
Fábio dos Reis trabalha com tecnologias variadas há mais de 30 anos, tendo atuado nos campos de Eletrônica, Telecomunicações, Programação de Computadores e Redes de Dados. É um entusiasta de Ciência e Tecnologia em geral, adora Viagens e Música, e estuda idiomas, além de ministrar cursos e palestras sobre diversas tecnologias em São Paulo e outras cidades do Brasil.

Escreva um comentário

Seu e-mail não será divulgado


*