Funzione is_a
La funzione is_a accetta un oggetto e un nome di classe, restituendo true se l'oggetto è un'istanza di quella classe o di una sua sottoclasse. Un terzo parametro permette di specificare se considerare l'ereditarietà (di default true).
Sintassi
is_a(object, class_name, allow_string = true);
Esempio
Verifichiamo se l'oggetto appartiene alla classe stdClass:
<?php
$obj = new stdClass();
var_dump(is_a($obj, 'stdClass'));
?>
Risultato dell'esecuzione del codice:
true
Esempio
Verifichiamo l'ereditarietà delle classi:
<?php
class ParentClass {}
class ChildClass extends ParentClass {}
$child = new ChildClass();
var_dump(is_a($child, 'ParentClass'));
?>
Risultato dell'esecuzione del codice:
true
Esempio
Verifichiamo il funzionamento con le interfacce:
<?php
interface MyInterface {}
class MyClass implements MyInterface {}
$obj = new MyClass();
var_dump(is_a($obj, 'MyInterface'));
?>
Risultato dell'esecuzione del codice:
true
Vedi anche
-
la funzione is_subclass_of,
che verifica l'ereditarietà -
l'operatore instanceof,
operatore di verifica dell'istanza -
la funzione get_class,
che restituisce la classe dell'oggetto -
la funzione class_implements,
che restituisce le interfacce della classe