is_subclass_of ֆունկցիա
is_subclass_of ֆունկցիան ստուգում է, արդյոք օբյեկտը կամ դասը պատկանում է նշված դասի ժառանգներին, թե արդյոք այն իրականացնում է նշված ինտերֆեյսը: Առաջին պարամետրով ընդունում է օբյեկտ կամ դասի անուն, երկրորդով՝ ծնող դասի կամ ինտերֆեյսի անուն: Երրորդ ոչ պարտադիր պարամետրը որոշում է, արդյոք անհրաժեշտ է հաշվի առնել դասերի ավտոլoading-ը:
Շարահյուսություն
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 ֆունկցիան,
օբյեկտի ստուգման օպերատորը