我想將整數引用添加到PHP中的數組,但由於某種原因它不起作用。至於爲什麼我完全困惑。PHP添加對數組的引用
簡化的東西,代碼:
<?php
$myArray = array(1 => true, 2 => true, 3 => true);
$param_ref = array();
foreach($myArray as $key => $value) {
$param_ref[] = &$key;
}
var_dump($param_ref);
?>
我期望的輸出是:
array(3) {
[0] => &int(1)
[1] => &int(2)
[2] => &int(3)
}
但實際產量爲:
array(3) {
[0] => &int(3)
[1] => &int(3)
[2] => &int(3)
}
隨着一些仔細檢查,看起來數組的($ param_ref)值在循環的每次迭代中都被覆蓋。
任何想法是怎麼回事?
這是爲什麼?只需使用'array_keys()'。並且 - 是的,在你的情況下,你將以多個引用結束(循環結束)值 - 請參閱下面的回答 – 2014-09-06 13:44:07