function refArray(&$arr)
{
var_dump($arr);
$refs = [];
foreach ($arr as $key => $value)
$refs[$key] = &$arr[$key];
var_dump($refs);
return $refs;
}
$arry = [3, "hello", 0.8, null];
$referenceArray = refArray($arry);
echo "----------------------\r\n";
var_dump($arry);
var_dump($referenceArray);
与
function refArray($arr)
{
var_dump($arr);
$refs = [];
foreach ($arr as $key => $value)
$refs[$key] = &$arr[$key];
var_dump($refs);
return $refs;
}
$arry = [3, "hello", 0.8, null];
$referenceArray = refArray($arry);
echo "----------------------\r\n";
var_dump($arry);
var_dump($referenceArray);
如果没有将$arry 与函数的$arr进行引用赋值,那么传入的是$arry副本,返回之后副本就会被销毁,那么$refs 也就不再是引用赋值了,它所引用的副本没了。