Fonction is_a
La fonction is_a prend un objet et un nom de classe, et retourne true si l'objet est une instance de cette classe ou de son descendant. Un troisième paramètre permet de spécifier si l'héritage doit être pris en compte (par défaut true).
Syntaxe
is_a(object, class_name, allow_string = true);
Exemple
Vérifions si l'objet appartient à la classe stdClass :
<?php
$obj = new stdClass();
var_dump(is_a($obj, 'stdClass'));
?>
Résultat de l'exécution du code :
true
Exemple
Vérifions l'héritage des classes :
<?php
class ParentClass {}
class ChildClass extends ParentClass {}
$child = new ChildClass();
var_dump(is_a($child, 'ParentClass'));
?>
Résultat de l'exécution du code :
true
Exemple
Vérifions le fonctionnement avec les interfaces :
<?php
interface MyInterface {}
class MyClass implements MyInterface {}
$obj = new MyClass();
var_dump(is_a($obj, 'MyInterface'));
?>
Résultat de l'exécution du code :
true
Voir aussi
-
la fonction is_subclass_of,
qui vérifie l'héritage -
la fonction instanceof,
l'opérateur de vérification d'instance -
la fonction get_class,
qui retourne la classe de l'objet -
la fonction class_implements,
qui retourne les interfaces de la classe