将参数从php中的数组传递给构造函数

时间:2010-08-03 11:12:52

标签: php arrays function constructor arguments

通常,如果我想将$ myarray中的参数传递给$ somefunction,我可以在php中使用

call_user_func_array($somefunction, $myarray);

但是,当希望调用的函数是对象的构造函数时,这不起作用。出于相当明显的原因,它无法做到:

$myobj = new call_user_func_array($classname, $myarray);

是否有一些相当优雅的可以正常工作

1 个答案:

答案 0 :(得分:63)

您可以使用Reflection API:

示例:

$reflector = new ReflectionClass('Foo');
$foo = $reflector->newInstanceArgs(array('foo', 'bar'));