Resumo : neste tutorial, você aprenderá como usar foreach
instruções PHP para fazer um loop sobre os elementos de um array.
Introdução à instrução PHP foreach
O PHP fornece a foreach
instrução que permite iterar sobre elementos de um array , seja um array indexado ou um array associativo .
A foreach
instrução itera sobre todos os elementos de uma matriz, um de cada vez. Começa com o primeiro elemento e termina com o último. Portanto, você não precisa saber antecipadamente o número de elementos em um array.
O fluxograma a seguir ilustra como a foreach
instrução funciona:
PHP foreach com arrays indexados
Para iterar sobre todos os elementos de um array indexado, você usa a seguinte sintaxe:
<?php
foreach ($array_name as $element) {
// process element here
}
Linguagem de código: HTML, XML ( xml )
Quando o PHP encontra uma foreach
instrução, ele atribui o primeiro elemento do array à variável após a as
palavra-chave ( $element
).
Em cada iteração, o PHP atribui o próximo elemento do array à $element
variável. Se o PHP atingir o último elemento, o loop termina.
O exemplo a seguir usa a foreach
instrução para exibir elementos da $colors
matriz:
<?php
$colors = ['red', 'green', 'blue'];
foreach ($colors as $color) {
echo $color . '<br>';
}
Linguagem de código: HTML, XML ( xml )
Saída:
red
green
blue
Linguagem de código: texto simples ( texto simples )
PHP foreach com um array associativo
Para iterar sobre elementos de um array associativo , você usa a seguinte sintaxe:
<?php
foreach ($array_name as $key => $value) {
//process element here;
}
Linguagem de código: HTML, XML ( xml )
Quando o PHP encontra a foreach
instrução, ele acessa o primeiro elemento e atribui:
- A chave do elemento para a
$key
variável. - O valor do elemento para a
$value
variável.
Em cada iteração, o PHP atribui a chave e o valor do próximo elemento às variáveis ( $key
e $value
) que seguem a as
palavra-chave. Se o último elemento for alcançado, o PHP encerra o loop.
O exemplo a seguir ilustra como usar a foreach
instrução para iterar sobre elementos do captials
array:
<?php
$capitals = [
'Japan' => 'Tokyo',
'France' => 'Paris',
'Germany' => 'Berlin',
'United Kingdom' => 'London',
'United States' => 'Washington D.C.'
];
foreach ($capitals as $country => $capital) {
echo "The capital city of {$country} is $capital" . '<br>';
}
Linguagem de código: HTML, XML ( xml )
Saída:
The capital city of Japan is Tokyo
The capital city of France is Paris
The capital city of Germany is Berlin
The capital city of United Kingdom is London
The capital city of United States is Washington D.C.
Linguagem de código: texto simples ( texto simples )
Resumo
- Use o
foreach($array_name as $element)
para iterar sobre elementos de uma matriz indexada. - Use o
foreach($array_name as $key => $value)
para iterar sobre elementos de uma matriz associativa.