Der instanceof-Operator

Der Operator instanceof prüft, ob ein Objekt eine Instanz der angegebenen Klasse oder eines ihrer Nachfolger ist. Der erste Parameter ist das Objekt, der zweite - der Klassenname für die Prüfung. Gibt true zurück, wenn das Objekt zur Klasse gehört, andernfalls false.

Syntax

php$object instanceof ClassName;

Beispiel

Prüfen wir, ob das Objekt eine Instanz der Klasse MyClass ist:

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

Ergebnis der Codeausführung:

phptrue

Beispiel

Lassen Sie uns die Klassenvererbung prüfen:

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

Ergebnis der Codeausführung:

phptrue

Beispiel

Prüfen wir, dass das Objekt keine Instanz der Klasse ist:

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

Ergebnis der Codeausführung:

phpfalse

Siehe auch

  • die Funktion get_class,
    die den Klassennamen des Objekts zurückgibt
  • die Funktion is_a,
    die die Zugehörigkeit eines Objekts zu einer Klasse prüft