通过引用循环数组传递的最后一个索引显示两次

时间:2017-06-12 14:21:00

标签: php arrays pass-by-reference

我有这段代码。

foreach ($array as &$row) {
    // Do stuff to array
}

之后的var_dump显示数组的最后一个索引(在本例中为107)具有引用&

[107]=>
&array(4) {
  ["foo"]=>
  string(2) "bar"
}

我的问题是后续foreach不显示数组的最后一个索引,而是重复倒数第二个索引。

foreach ($array as $row) {
    var_dump($row);
    // When it gets to 107, it'll just show 106 again
}

为什么我会看到此行为,如何确保第二个foreach包含数组的最后一个元素?

0 个答案:

没有答案