call_user_func_array($callback, $param_arr)表示调用一个回调函数,并用一个数组做回回调函数的参数。
$callback 表示回掉函数的名称
$param_arr 表示回调函数的参数
function foobar($arg1, $arg2)
{
echo __FUNCTION__.'的参数是:'.$arg1.'和'.$arg2;
}
class Foo
{
function bar($arg1, $arg2)
{
echo __METHOD__.'的参数是:'.$arg1.'和'.$arg2;
}
}
call_user_func_array('foobar', ['aaa', 'bbb']);
call_user_func_array([new Foo(), 'bar'], ['aaa', 'bbb']);
在类外部,__FUNCTION__和__METHOD__都返回方法名称;
在类内部,__FUNCTION__返回方法名称,__METHOD__除了返回方法名称,还在前面加了一个类名::。