在 PHP 中,使用 ReflectionClass 创建实例的方法如下:
$className = 'YourClassName';
$reflectionClass = new ReflectionClass($className);
newInstance()
方法创建实例。if ($reflectionClass->hasMethod('__construct')) {
$constructor = $reflectionClass->getMethod('__construct');
$constructor->invoke($instance);
} else {
$instance = $reflectionClass->newInstance();
}
这里是一个完整的示例:
class MyClass {
public function __construct() {
echo "MyClass constructor called!";
}
}
$className = 'MyClass';
$reflectionClass = new ReflectionClass($className);
if ($reflectionClass->hasMethod('__construct')) {
$constructor = $reflectionClass->getMethod('__construct');
$constructor->invoke($instance);
} else {
$instance = $reflectionClass->newInstance();
}
echo $instance;
这个示例将输出 “MyClass constructor called!”,表示构造函数已成功调用。