Funciona somente com arrays, e lançará um erro se tentar utilizá-lo em uma variável de qualquer tipo diferente ou em variáveis não inicializadas. A duas sintaxes básicas para o comando. O segundo é uma abreviatura, mas útil do que primeira:
foreach (expressao_array as $valor)
instruções
foreach (expressao_array as $chave => $valor)
instruções
A primeira forma varre uma matriz dada por expressao_array. Em cada loop, o valor do elemento corrente é atribuído a $valor e o ponteiro interno da matriz é avançado em uma posição (assim, no próxima bloco de instruções você estará olhando para o próximo elemento). |
|
Exemplos com Foreach:
<?php
$arr = array(1, 2, 3, 4);
foreach ($arr as $value) {
echo $value;
}
$arr = array(1, 2, 3, 4);
foreach ($arr as $key => $value) {
echo "Chave: $key – Valor: $value";
}
?>
A partir do PHP 5, você pode modificar facilmente os elementos de matriz de precedendo $ value com &. Isto irá atribuir de referência em vez de copiar o valor.
<?php
$arr = array( 1 , 2 , 3 , 4 );
foreach ( $arr as & $value ) {
$value = $value * 2 ;
}
// $arr is now array(2, 4, 6, 8)
unset( $value ); // break the reference with the last element
?>
Isso só é possível se a matriz iterada pode ser referenciada (isto é, é variável), o que significa o seguinte código não vai funcionar:
<?php
foreach (array( 1 , 2 , 3 , 4 ) as & $value ) {
$value = $value * 2 ;
}
?>
Veja mais:
- Introdução ao PHP
- Como rodar php
- Variáveis em PHP
- Tipos de dados em php
- Operadores em php
- for em php – estrutura de looping
- while em PHP
- do...while em PHP
- Foreach em PHP
0 comentários:
Postar um comentário