Función is_a
La función is_a toma un objeto y un nombre de clase, devolviendo true si el objeto es una instancia de esta clase o su descendiente. Un tercer parámetro permite especificar si se debe tener en cuenta la herencia (por defecto true).
Sintaxis
is_a(object, class_name, allow_string = true);
Ejemplo
Verifiquemos si el objeto pertenece a la clase stdClass:
<?php
$obj = new stdClass();
var_dump(is_a($obj, 'stdClass'));
?>
Resultado de la ejecución del código:
true
Ejemplo
Verifiquemos la herencia de clases:
<?php
class ParentClass {}
class ChildClass extends ParentClass {}
$child = new ChildClass();
var_dump(is_a($child, 'ParentClass'));
?>
Resultado de la ejecución del código:
true
Ejemplo
Verifiquemos el trabajo con interfaces:
<?php
interface MyInterface {}
class MyClass implements MyInterface {}
$obj = new MyClass();
var_dump(is_a($obj, 'MyInterface'));
?>
Resultado de la ejecución del código:
true
Ver también
-
función is_subclass_of,
que verifica la herencia -
función instanceof,
operador de verificación de instancia -
función get_class,
que devuelve la clase del objeto -
función class_implements,
que devuelve las interfaces de la clase