Функсияи 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,
оператори санҷиши мисол