0
我无法弄清楚这段PHP中$arrayParams
的最终结果之间的区别是什么。Php数组:找出差异!
该函数采用字符串$types
,另一个参数为$params
。 $params
本身可以是任何类型的单个值或任何类型的值的数组。
此代码的目的是在代码中稍后绑定到call_user_func_array()
。
最终的$arrayParams
变量需要是索引为0的数组作为原始$types
字符串,然后以下索引将作为传入的字符串的引用,作为$params
。
if(is_array($params)) {
// Make a new array, first index is $types string.
$arrayParams = array($types);
// Loop over $params array and add the pointer of each index to $arrayParams.
// ??? This doesn't seem to be working ???
foreach($params as $p) {
$arrayParams[] = &$p;
}
}
else {
// This works fine here, very simple.
$arrayParams = array($types, &$params);
}
var_dump
的$array_params
,当传递$params
为阵列示出了第一后所有的键是一个指针,指向同一值(?)
请问为什么$ p需要取消设置? – Greg 2010-12-11 13:12:32
@Greg请参阅[此处的警告](http://php.net/manual/en/control-structures.foreach.php)。 – 2010-12-11 13:13:50
由于“未设置”提示而接受的答案。谢谢 :) – Greg 2010-12-11 13:16:07