How to call the constructor with call_user_func_array in PHP How to call the constructor with call_user_func_array in PHP php php

How to call the constructor with call_user_func_array in PHP


You can use reflection like:

$reflect  = new ReflectionClass($class);$instance = $reflect->newInstanceArgs($args);

As of PHP 5.6.0, the ... operator can also be used for this purpose.

$instance = new $class(...$args);

if(version_compare(PHP_VERSION, '5.6.0', '>=')){    $instance = new $class(...$args);} else {    $reflect  = new ReflectionClass($class);    $instance = $reflect->newInstanceArgs($args);}