array each( array &array )
배열에서 포인터가 가르키는 원소의 키와 값을 가져와 배열로 반환한다.

array 배열의 하나의 원소 가져와 이 원소의 키와 값을 배열로 반환한후 다음 원소로 이동시킨다.
배열의 마지막 원소 이후의 위치에 있어서 더이상 다음 원소로 이동할 수 없는 경우에는 FALSE를 반환한다.


예제1

<?
$foods = array("pizza", "beverage" => "cola", "pasta", "apple");

// 첫 번째 원소의 키와 값을 배열 $food로 반환한다.
$food = each($foods);
echo "\$food[1] : " . $food[1] . "<br>";
echo "\$food[value] : " . $food["value"] . "<br>";
echo "\$food[0] : " . $food[0] . "<br>";
echo "\$food[key] : " . $food["key"] . "<p>";
/*
$food[1] : pizza
$food[value] : pizza
$food[0] : 0
$food[key] : 0
*/

// 두 번째 원소의 키와 값을 배열 $food로 반환한다.
$food = each($foods);
echo "\$food[1] : " . $food[1] . "<br>";
echo "\$food[value] : " . $food["value"] . "<br>";
echo "\$food[0] : " . $food[0] . "<br>";
echo "\$food[key] : " . $food["key"];
/*
$food[1] : cola
$food[value] : cola
$food[0] : beverage
$food[key] : beverage
*/ 
?>


예제2 - while문과 함께 사용하기

<?
$foods = array("pizza", "beverage" => "cola", "pasta", "apple");

while($food = each($foods)){
echo "\$food[key] : " . $food["key"] . " : \$food[value] : " . $food["value"] . "<br>";
}

/*
$food[key] : 0 : $food[value] : pizza
$food[key] : beverage : $food[value] : cola
$food[key] : 1 : $food[value] : pasta
$food[key] : 2 : $food[value] : apple
*/ 
?>


예제3 - while, list와 함께 사용하기

<?
$foods = array("pizza", "beverage" => "cola", "pasta", "apple");

while(list($key,$val) = each($foods)){
echo "\$food[$key] : ".$val."<br>";
}

/*
$food[0] : pizza
$food[beverage] : cola
$food[1] : pasta
$food[2] : apple
*/ 
?>