【发布时间】:2013-05-09 16:48:13
【问题描述】:
我正在尝试在使用 foreach 循环时将键=>值对添加到数组中,当添加该值时,foreach 循环需要处理新的键=>值对。
$array = array(
'one' => 1,
'two' => 2,
'three' => 3
);
foreach($array as $key => $value) {
if ($key == 'three') {
$array['four'] = 4;
} else if ($key == 'four') {
$array['five'] = 5;
}
}
如果我在循环后打印数组,我希望看到所有 5 kv,但我只看到这个:
Array
(
[one] => 1
[two] => 2
[three] => 3
[four] => 4
)
当我添加第四对时,有什么方法可以实际处理它,以便将第五对添加到该 foreach 循环(或其他类型的循环?)
【问题讨论】:
-
您在循环数组时正在修改数组。所有赌注都已取消,您处于未定义的领域。
标签: php arrays associative-array