call_user_func_array的讲解 - youngperson/study-100 GitHub Wiki
call_user_func_array
- mixed call_user_func_array ( callable $callback , array $param_arr )
- 调用回调函数,并把一个数组参数作为回调函数的参数
- 把第一个参数作为回调函数(callback)调用,把参数数组作(param_arr)为回调函数的的参数传入(得是索引数组)。
- 返回回调函数的结果。如果出错的话就返回FALSE
例子
<?php
function foobar($arg, $arg2) {
echo __FUNCTION__, " got $arg and $arg2\n";
}
class foo {
function bar($arg, $arg2) {
echo __METHOD__, " got $arg and $arg2\n";
}
}
// Call the foobar() function with 2 arguments
call_user_func_array("foobar", array("one", "two"));
// Call the $foo->bar() method with 2 arguments
$foo = new foo;
call_user_func_array(array($foo, "bar"), array("three", "four"));
- 场景
- call_user_func_array([$redis, 'hDel'], $hashKeys); $hashKeys第一个值是一级key,第二个开始都是二级key,实现批量删除
- 动态调用函数时,比如参数个数或调用方法名称不确定的时候很好用