Operador instanceof

El operador instanceof verifica si un objeto es una instancia de una clase específica o de su heredera. Toma como primer parámetro el objeto, y como segundo - el nombre de la clase a verificar. Devuelve true si el objeto pertenece a la clase o false en caso contrario.

Sintaxis

php$object instanceof ClassName;

Ejemplo

Verifiquemos si un objeto es una instancia de la clase MyClass:

php<?php
  class MyClass {}
  $obj = new MyClass();
  var_dump($obj instanceof MyClass);
?>

Resultado de la ejecución del código:

phptrue

Ejemplo

Verifiquemos la herencia de clases:

php<?php
  class ParentClass {}
  class ChildClass extends ParentClass {}
  
  $child = new ChildClass();
  var_dump($child instanceof ParentClass);
?>

Resultado de la ejecución del código:

phptrue

Ejemplo

Verifiquemos que un objeto no es una instancia de una clase:

php<?php
  class A {}
  class B {}
  
  $a = new A();
  var_dump($a instanceof B);
?>

Resultado de la ejecución del código:

phpfalse

Véase también

  • la función get_class,
    que devuelve el nombre de la clase del objeto
  • la función is_a,
    que verifica la pertenencia de un objeto a una clase