これは、each()でlist()を使用するためのphpdocの実用的なサンプルコードです。
<?php
$fruit = array('a' => 'apple', 'b' => 'banana', 'c' => 'cranberry');
reset($fruit);
while (list($key, $val) = each($fruit)) {
echo "$key => $val\n";
}
?>
出力は
a => apple
b => banana
c => cranberry
なぜそれが機能し、そのように出力されるのかわかりません。なぜなら、
each()のAPIから、 each()は4つのキー/値ペアを持つ配列を返すと言います。したがってeach($fruit)
、次のようになります。
Array
(
[1] => yy
[value] => yy
[0] => xx
[key] => xx
)
コードの場合:
while (list($key, $val) = each($fruit)) {
echo "$key => $val\n";
}
$key
と等しくてはいけませんeach($fruit)[1]
、そして?$val
each($fruit)[value]