Funktsioon is_subclass_of
Funktsioon is_subclass_of kontrollib, kas objekt või klass kuulub määratud klassi järeltulijate hulka või rakendab see määratud liidest. Esimeseks parameetriks võtab objekti või klassi nime, teiseks - vanemklassi või liidese nime. Kolmas valikuline parameeter määrab, kas klassi automaatset laadimist tuleb arvestada.
Süntaks
is_subclass_of(mixed $object_or_class, string $class, bool $allow_string = true): bool
Näide
Kontrollime lihtsate klasside pärimist:
<?php
class ParentClass {}
class ChildClass extends ParentClass {}
$res = is_subclass_of('ChildClass', 'ParentClass');
var_dump($res);
?>
Koodi täitmise tulemus:
true
Näide
Kontrollime liidese rakendamist:
<?php
interface MyInterface {}
class MyClass implements MyInterface {}
$res = is_subclass_of('MyClass', 'MyInterface');
var_dump($res);
?>
Koodi täitmise tulemus:
true
Näide
Kontroll objektiga klassi nime asemel:
<?php
class Animal {}
class Dog extends Animal {}
$dog = new Dog();
$res = is_subclass_of($dog, 'Animal');
var_dump($res);
?>
Koodi täitmise tulemus:
true
Näide
Juhu kontroll, kui klass ei ole järeltulija:
<?php
class A {}
class B {}
$res = is_subclass_of('B', 'A');
var_dump($res);
?>
Koodi täitmise tulemus:
false
Vaata ka
-
funktsiooni is_a,
mis kontrollib klassi kuuluvust -
funktsiooni class_parents,
mis tagastab kõik vanemad -
funktsiooni get_parent_class,
mis tagastab vanemklassi -
funktsiooni instanceof,
eksemplari kontrolli operaator