0

我正在尝试创建一个对象,然后使用自定义参数调用一个方法。

我不能使用 call_user_func_array 因为这不会创建对象的新实例,稍后我需要在我的类中调用 $this 。

$params = array('param1', 'param2', 'etc') ;

我该怎么做才能使结果等同于:

$controller = new $class ;
$controller->$method($param1, $param2, $etc) ;

我也不想使用 ReflectionClass,因为据报道它比实例化慢。

4

1 回答 1

2

是的,您可以使用call_user_func_array

$controller = new $class;
call_user_func_array(array($controller, $method), $params);

参考: http: //php.net/manual/function.call-user-func-array.php

于 2012-12-05T11:30:15.277 回答