each

(PHP 3, PHP 4 , PHP 5)

each --  Retorna o par chave/valor corrente de um array e avança o seu cursor

Descrição

array each ( array array )

Retorna o par chave/valor corrente de array e avança o seu cursor. Esse par é retornado num array de quatro elementos, com as chaves 0, 1, key, e value. Os elementos 0 e key contêm o nome da chave do elemento do array, e 1 e value contêm o valor.

Se o cursor interno do array estiver apontando para além do final do array, each() retorna FALSE.

Exemplo 1. Exemplos de each()

<?php

$foo
= array("bob", "fred", "jussi", "jouni", "egon", "marliese");
$bar = each($foo);
print_r($bar);
?>

$bar agora contém os seguintes pares de chaves e valores:

Array  
  (  
      [1] => bob  
      [value] => bob  
      [0] => 0  
      [key] => 0  
  )

<?php
  $foo
= array("Robert" => "Bob", "Seppo" => "Sepi");  
  
$bar = each($foo);  
  
print_r($bar);  
  
?>

$bar agora contém os seguintes pares de chaves e valores:

Array  
  (  
      [1] => Bob  
      [value] => Bob  
      [0] => Robert  
      [key] => Robert  
  )

each() é tipicamente usada em conjunto com list() para percorrer um array, por exemplo:

Exemplo 2. Percorrendo um array com each()

<?php
$fruit
= array('a' => 'apple', 'b' => 'banana', 'c' => 'cranberry');
reset($fruit);
while (list(
$key, $val) = each($fruit)) {  
      echo
"$key => $val\n";  
}
/* Saída:
    
  a => apple
  b => banana
  c => cranberry
    
  */
?>

Depois da execução de each(), o cursor interno do array vai apontar para o próximo elemento do array, ou após o último elemento se ele chegar ao final do array. Você deve usar reset() se quiser percorrer o array novamente.

Cuidado

Because assigning an array to another variable resets the original arrays pointer, our example above would cause an endless loop had we assigned $fruit to another variable inside the loop.

Veja também key(), list(), current(), reset(), next(), prev() e foreach.