Функција is_subclass_of
Функцијата is_subclass_of проверува дали објектот или класата припаѓаат на потомците на наведената класа или дали го имплементира наведениот интерфејс. Како прв параметар прифаќа објект или име на класа, како втор - име на родителска класа или интерфејс. Третиот незадолжителен параметар одредува дали треба да се земе предвид автоматското вчитување на класи.
Синтакса
is_subclass_of(mixed $object_or_class, string $class, bool $allow_string = true): bool
Пример
Да провериме наследување на едноставни класи:
<?php
class ParentClass {}
class ChildClass extends ParentClass {}
$res = is_subclass_of('ChildClass', 'ParentClass');
var_dump($res);
?>
Резултат од извршување на кодот:
true
Пример
Да провериме имплементација на интерфејс:
<?php
interface MyInterface {}
class MyClass implements MyInterface {}
$res = is_subclass_of('MyClass', 'MyInterface');
var_dump($res);
?>
Резултат од извршување на кодот:
true
Пример
Проверка со објект наместо име на класа:
<?php
class Animal {}
class Dog extends Animal {}
$dog = new Dog();
$res = is_subclass_of($dog, 'Animal');
var_dump($res);
?>
Резултат од извршување на кодот:
true
Пример
Проверка на случај кога класата не е потомок:
<?php
class A {}
class B {}
$res = is_subclass_of('B', 'A');
var_dump($res);
?>
Резултат од извршување на кодот:
false
Погледнете ги исто така
-
функцијата is_a,
која проверува припадност на класа -
функцијата class_parents,
која ги враќа сите родители -
функцијата get_parent_class,
која ја враќа родителската класа -
функцијата instanceof,
оператор за проверка на инстанца