Bla*_*ard 12 php parsing function call
我有一个参数数组:
$params[1] = 'param1';
$params[2] = 'param2';
$params[3] = 'param3';
...
$params[N] = 'paramN';
Run Code Online (Sandbox Code Playgroud)
我有各种函数的调用者:
$method->$function( $params );
Run Code Online (Sandbox Code Playgroud)
如何解析$ params数组,因此可以将多个(和无限制)参数传递给任何函数:
$method->$function( $params[1], $params[2], ..., $params[N] );
Run Code Online (Sandbox Code Playgroud)
想法是利用这样的url重写:
http://domain.com/class/method/parameter/parameter/parameter/ ...
Yac*_*oby 18
您需要使用call_user_func_array
call_user_func_array( array($method, $function), $params);
Run Code Online (Sandbox Code Playgroud)
Mic*_*les 14
从 PHP 5.6 开始,您可以使用参数解包:
function add($a, $b, $c) {
return $a + $b + $c;
}
$numbers = [1, 2, 3];
echo add(...$numbers);
Run Code Online (Sandbox Code Playgroud)