在PHP 5.x中,如何在运行时检测类是否是抽象的?

Kei*_*Jr. 22 php oop reflection

我在PHP中循环遍历一个类名数组,通过get_declared_classes()获取.

如何检查每个类名以检测该特定类是否为抽象类?

var*_*tec 38

使用反射. ReflectionClass->isAbstract()

像这样使用它:

$class = new ReflectionClass('NameOfTheClass');
$abstract = $class->isAbstract();
Run Code Online (Sandbox Code Playgroud)

  • 请注意,如果您正在测试抽象性以确定它是否可实例化,则可能需要使用 [`isInstantiable`](http://www.php.net/manual/en/reflectionclass.isinstantiable.php) ,它检查抽象类、接口、私有构造函数等。 (3认同)