【发布时间】:2011-05-20 13:15:38
【问题描述】:
这段代码
<?php
$a = 10;
$arr1 = array(&$a);
$arr1[0] = 20;
echo $a; echo "\n";
$arr2 = $arr1;
$arr2[0] = 30;
echo $a;
生产
20
30
显然引用数组成员是“保留的”,这可能会导致一些有趣/奇怪的行为,例如
<?php
function f($arr) {
$arr[0] = 20;
}
$val = 10;
$a = array(&$val);
f($a);
echo $a[0];
?>
输出
20
我的问题是:它有什么用,它在哪里记录(除了http://www.php.net/manual/en/language.types.array.php#50036 的用户评论)和 Zend 引擎源代码本身?
【问题讨论】: