如何在PHP中检查对象实例是否继承自抽象类

如何在PHP中检查对象实例是否继承自抽象类,php,inheritance,abstract-class,Php,Inheritance,Abstract Class,我上过抽象课 abstract class AbstractPerson{ ...... } 我把这个人算进去了 class Account extends AbstractPerson{ ...... } 现在我要做一个类的对象 $account= new Account() 我想知道如何检查$account对象是否从AbstractPerson类扩展而来?使用: if ($account instanceof AbstractPerson) { echo 'Abstrac

我上过抽象课

abstract class AbstractPerson{
  ......
}
我把这个人算进去了

class Account extends AbstractPerson{
  ......
}
现在我要做一个类的对象

$account= new Account()
我想知道如何检查
$account
对象是否从AbstractPerson类扩展而来?

使用:

if ($account instanceof AbstractPerson) {
   echo 'AbstractPerson';
}
使用:

那么,您需要两个方法getParentClass()&IsaStract()

这里有一个你需要的工作示例

$accountReflection     = new ReflectionClass('Account');
$parentReflection     = new ReflectionClass($accountReflection->getParentClass()->getName());
$isAbstract           = $parentReflection->isAbstract(); // return true of false
那么,您需要两个方法getParentClass()&IsaStract()

这里有一个你需要的工作示例

$accountReflection     = new ReflectionClass('Account');
$parentReflection     = new ReflectionClass($accountReflection->getParentClass()->getName());
$isAbstract           = $parentReflection->isAbstract(); // return true of false

什么是$testClass?我修复它,检查它。$accountReflection::getParentClass();这个语法是错误的,我已经编辑了访问器,但是$isastract仍然返回false;什么是$testClass?我修复它,检查它。$accountReflection::getParentClass();这个语法是错误的,我已经编辑了访问器,但是$isastract仍然返回false;