Php dynamic class construction
I'm trying to avoid the use of eval
. I can dynamically instantiate a class like this:
class myclass {}
$my_class_name = 'myclass';
$obj = new $myclass();
If the constructor is like follows:
class myclass {
public function __construct( $argument1, $argument2 ) {}
}
and i have the values of the arguments in an array, how can i dynamically instantiate the class and pass it dynamic arguments? Mind that I have no way to modify the class, so开发者_运维知识库 I have to work on the way of using it.
Thanks
ReflectionClass::newInstanceArgs seems to be just the thing you're looking for.
$obj = new $myclass($array['key1'], $Arr['key2'], ...);
精彩评论