我有两个数组。一个会添加数组作为子元素,另一个保存对第一个数组添加的引用。php一个参考数组
$list=array();
$stack=array();
在for循环中:
$list[]=array('something');
$stack[]=& end($list); //errors: Only variables should be assigned by reference
我到底做错了什么?感谢帮助。
我有两个数组。一个会添加数组作为子元素,另一个保存对第一个数组添加的引用。php一个参考数组
$list=array();
$stack=array();
在for循环中:
$list[]=array('something');
$stack[]=& end($list); //errors: Only variables should be assigned by reference
我到底做错了什么?感谢帮助。
被修改
$stack[] = &$list[count($list)-1]; //> Assuming numeric index incremental
或
end($list);
$stack[] = &$list[key($list)];
这样,引用是$ var,而不是结束($ list)?对??我希望引用结尾($ list),所以它不会在for循环之外解除。 – bingjie2680
'&='意味着不同的东西。可能不是什么意图。 – duskwuff
@duskwuff:这显然是一个错字。您可以编辑 – dynamic
对象将总是通过引用PHP传递5.
EDITED
但是如果阵列是不一类然后
$element = array();
$list[] = &$element;
$stack[] = &$element;
对不起,我是一个初学者在PHP。数组也一样吗? – bingjie2680
如果您使用PHP数组,则代码更简单。当然,你需要将填充数组传递给$元素。 – Gedrox
所以列表和堆栈都是引用$元的数组? – bingjie2680
错误消息似乎不言自明。为什么'新阵列'?只是'阵列'会做。 –
@tomalak,对不起,这是一个错误。 – bingjie2680