Запіс на курсы па HTML, CSS, JavaScript, PHP, Python, фрэймворкам і CMS,
а таксама: дапамога ў пошуку працы і заказаў, стажыроўка на рэальных праектах→
326 of 410 menu

Функцыя 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,
    аператар праверкі асобніка
byenru