自分で見てください:
$test = array('1' => 1, '2' => 2, '3' => 3, '4' => 4, '5' => 5); print_r($test); foreach ($test as $key => $value) { echo "{$key} => {$value}\n"; }
期待したものが得られます。
Array ( [1] => 1 [2] => 2 [3] => 3 [4] => 4 [5] => 5 ) 1 => 1 2 => 2 3 => 3 4 => 4 5 => 5
ただし、参照によって反復を追加する価値があります。
$test = array('1' => 1, '2' => 2, '3' => 3, '4' => 4, '5' => 5); foreach ($test AS &$value) { // - . } print_r($test); foreach ($test as $key => $value) { echo "{$key} => {$value}\n"; }
...予期しない結果を得る方法:
Array ( [1] => 1 [2] => 2 [3] => 3 [4] => 4 [5] => 5 ) 1 => 1 2 => 2 3 => 3 4 => 4 5 => <b>4</b>
私はわき柱が何であるかを完全には理解していません、それは何らかの形で最初のループを出た後の最後の要素へのリンクが$ valueにあるという事実に関連しています。 この動作を回避するには、2つの方法があります。2番目のループも参照で繰り返すか、$値の代わりに別の名前を使用する必要があります。