【发布时间】:2011-03-19 10:56:34
【问题描述】:
我有这个代码:
$a = array ('zero','one','two', 'three');
foreach ($a as &$v) {
}
foreach ($a as $v) {
echo $v.PHP_EOL;
}
有人可以解释为什么输出是: 零一二二。
来自 zend 认证学习指南。
【问题讨论】:
-
unset($your_used_reference);每次使用foreach($var as &$your_used_reference)! -
感谢您的指点,但我只是想了解第二个 foreach 的工作原理。
-
为什么 $your_used_reference(或 OPs 帖子中的 $v)不会自动取消设置?它的范围是 foreach,不应该存在于它之外?
-
@Hurix 循环在 PHP 中没有自己的作用域。
-
这个问题现在是discussed on Meta。
标签: php