call_user_func_array : 调用回调函数,并把一个数组参数作为回调函数的参数。
说明:mixed call_user_func_array ( callable $callback , array $param_arr )
把第一个参数作为回调函数(callback)调用,把参数数组作(param_arr)为回调函数的的参数传入。
返回回调函数的结果。如果出错的话就返回FALSE
代码如下:
(1)普通使用:
function a($b, $c) {
echo $b;
echo $c;
}
call_user_func_array('a', array("111", "222"));
//输出 111 222
(2)调用类内部的方法:
Class ClassA {
function bc($b, $c) {
$bc = $b + $c;
echo $bc;
}
}
call_user_func_array(array('ClassA','bc'), array("111", "222"));
//输出 333
(3)支持引用传递:
function a(&$b) {
$b++;
}
$c = 1;
call_user_func_array('a', array(&$c));
echo $c; //输出 2
注意:call_user_func_array 与 call_user_func 这两个函数基本上是类似的,只是在调用上传递参数时存在一些差异。
函数call_user_func_array 传递的第二个参数必须是数组;
函数call_user_func 传递的第二个参数可能是数组,如果是多个参数的话,还是需要以列表的形式列出。
call_user_func ( callback $function [,mixed $parameter [, mixed $...]] )