A estrutura foreach
A estrutura foreach permite iterar sequencialmente sobre os elementos de um array.
Ela funciona com arrays e objetos que implementam a interface Traversable.
Existem duas variantes de sintaxe: para iterar apenas sobre valores e para iterar sobre chaves e valores.
Sintaxe
foreach (array as $value) {
// corpo do loop
}
foreach (array as $key => $value) {
// corpo do loop
}
Exemplo
Iteração simples sobre elementos de um array:
<?php
$arr = [1, 2, 3, 4, 5];
foreach ($arr as $value) {
echo $value . '<br>';
}
?>
Resultado da execução do código:
1
2
3
4
5
Exemplo
Iteração sobre um array obtendo chaves e valores:
<?php
$arr = ['a' => 1, 'b' => 2, 'c' => 3];
foreach ($arr as $key => $value) {
echo "$key: $value<br>";
}
?>
Resultado da execução do código:
a: 1
b: 2
c: 3
Exemplo
Uso de referência para modificar elementos do array:
<?php
$arr = [1, 2, 3, 4, 5];
foreach ($arr as &$value) {
$value *= 2;
}
unset($value);
print_r($arr);
?>
Resultado da execução do código:
[2, 4, 6, 8, 10]
Veja também
-
a função
array_map,
que aplica uma função callback a todos os elementos do array -
a função
array_walk,
que aplica uma função definida pelo usuário a cada elemento do array