Nesta aula estudaremos a estrutura de repetição foreach, ou seja, uma definição evoluida da instrução for. Aprenderemos quando e onde devemos utilizar e implementaremos um código onde estudaremos o seu uso na prática. |
ITERANDO ARRAYS - ESTRUTURA foreach
A estrutura de iteração foreach é uma instrução especializada na iteração de Arrays, ou seja, uma estrutura que está projetada para percorrer todos os elementos contidos num Array. Essa estrutura, além de melhorar a legibilidade do código, também evita alguns problemas, como o acesso a elementos que não existem, problema recorrente quando trabalhamos com a estrutura for em sua definição básica.
Com a estrutura foreach temos acesso total aos elementos, da mesma forma como teríamos se estivessemos utilizando a estrutura for normal. Então, temos que o laço percorrerá todos elementos e a cada ciclo será definido o próximo elemento contido na estrutura que está sendo iterada.
Então, temos que pensar na estrutura foreach da seguinte maneira: "a cada elemento do array, execute o bloco definido".
$lista = array(
0 => 'par',
1 => 'impar',
2 => 'par',
3 => 'impar',
4 => 'par',
5 => 'impar',
6 => 'par',
7 => 'impar',
8 => 'par',
9 => 'impar',
10 => 'par'
);
// Imprime os números de 1 até 10
foreach( range(0, 10, 2) as $numero ) {
print "$numero = $lista[$numero] \n";
}
$arr = range(1, 10);
foreach($arr as $valor) {
echo "$valor\n";
}
$arr = array(1, 2, 3, 17);
$i = 0;
foreach ($arr as $valor) {
echo "\$arr[$i] => $valor\n";
$i++;
}
$lista = array (
"um" => 1,
"dois" => 2,
"três" => 3,
"quatro" => 4
);
foreach ($lista as $chave => $valor) {
echo "\$lista[$chave] => $valor.\n";
}
$lista = array();
$lista[0][0] = "a";
$lista[0][1] = "b";
$lista[1][0] = "c";
$lista[1][1] = "d";
foreach ($lista as $val1) {
foreach ($val1 as $val2) {
echo "$val2\n";
}
}
foreach ([1, 2, 3, 4, 5] as $valor){
echo "$valor\n";
}
EXEMPLO FEITO EM AULA
#ESTRUTURA FOREACH
$lista = ["Domingo", "Segunda", "Terça", "Quarta", "Quinta", "Sexta", "Sabado"];
//for($x=0; $x<count($lista); $x++){
// echo "$x: $lista[$x]\n";
//}
foreach($lista as $item){
echo "$item\n";
}
Tags curso, php
Comentários
comments powered by Disqus