我正在尝试使用动态参数创建一个新的类实例,例如:
$controller = 'className';
$parameters = array('hello', 'world');
new $controller($parameters);
除了我希望将参数自然地传递给类,就像我通过调用方法一样call_user_func_array();
,我想避免必须在数组中传递参数。
有没有办法在有效调用call_user_func_array();
构造函数的同时启动一个类?或者甚至阻止构造函数的自动运行,以便我可以通过call_user_func_array();
将属性作为数组运行它?
我现在的实际代码是:
if(!class_exists($controller)) require('controllers/' . $controller . '.php');
return new $controller();
我可以将一组参数传递给构造函数$controller($parameters)
,但它们都将位于一个数组中,而不是作为单独的参数。
完整的文件源可以在这里的上下文中查看:https ://github.com/pyrokinetic/mfw/blob/master/libraries/load.lib.php