PHP Conference Fukuoka 2025

ReflectionClass::isSubclassOf

(PHP 5, PHP 7, PHP 8)

ReflectionClass::isSubclassOfVérifie si la classe est une sous-classe

Description

public ReflectionClass::isSubclassOf(ReflectionClass|string $class): bool

Vérifie si la classe est une sous-classe de la classe spécifiée ou implémente une interface spécifiée.

Liste de paramètres

class

Soit le nom de la classe en tant que chaîne de caractères soit un objet ReflectionClass de la classe à vérifier.

Valeurs de retour

Renvoie true si la classe est une sous-classe de la classe ou interface spécifiée ou sinon false.

Voir aussi

add a note

User Contributed Notes 2 notes

up
2
dhairya lakhera
9 years ago
class A {}class B {}class C extends B {}$obj=new ReflectionClass('C');var_dump($obj->isSubclassOf ('A')); //boolean falsevar_dump($obj->isSubclassOf ('B')); //boolean true
up
1
voitcus at gmail dot com
5 years ago
Note, that this method is a bit different than the `instanceof` operator, which returns true, when it is a subclass or the very same class (interface). Here, only being a subclass results in true, eg.class A {}class B extends A {}$a = new ReflectionClass('A');$AA = new A;$b = new ReflectionClass('B');$BB = new B;var_dump($a->isSubclassOf($b)); // falsevar_dump($AA instanceof $BB); // falsevar_dump($b->isSubclassOf($a)); // truevar_dump($BB instanceof $AA); // truevar_dump($a->isSubclassOf($a)); // falsevar_dump($AA instanceof $AA); // true
To Top