Funcția is_a
Funcția is_a primește un obiect și un nume de clasă, returnând true dacă obiectul este o instanță a acestei clase sau a unui descendent al acesteia. Al treilea parametru poate specifica dacă trebuie luată în considerare moștenirea (implicit true).
Sintaxă
is_a(object, class_name, allow_string = true);
Exemplu
Să verificăm dacă obiectul aparține clasei stdClass:
<?php
$obj = new stdClass();
var_dump(is_a($obj, 'stdClass'));
?>
Rezultatul executării codului:
true
Exemplu
Să verificăm moștenirea claselor:
<?php
class ParentClass {}
class ChildClass extends ParentClass {}
$child = new ChildClass();
var_dump(is_a($child, 'ParentClass'));
?>
Rezultatul executării codului:
true
Exemplu
Să verificăm funcționarea cu interfețe:
<?php
interface MyInterface {}
class MyClass implements MyInterface {}
$obj = new MyClass();
var_dump(is_a($obj, 'MyInterface'));
?>
Rezultatul executării codului:
true
Vedeți și
-
funcția is_subclass_of,
care verifică moștenirea -
funcția instanceof,
operatorul de verificare a instanței -
funcția get_class,
care returnează clasa obiectului -
funcția class_implements,
care returnează interfețele clasei