【发布时间】:2011-03-19 07:22:01
【问题描述】:
最近我遇到了这个奇怪的问题:
while(list($key, $value) = each($array))
没有列出所有数组值,将其替换为...
foreach($array as $key => $value)
...完美运行。
而且,我现在很好奇..这两者有什么区别?
【问题讨论】:
-
注意:
foreach()适用于 96% 的所有用例。但是,有时您必须在迭代期间更改 数组本身,这就是each()的强大之处,因为 foreach 在内部复制数组。请看下面我的回答。任何使用过 libxml 的人都可以证明在每种情况下盲目使用 foreach 的危险。
标签: php arrays loops foreach while-loop