Operatoren instanceof

Operatoren instanceof kontrollerer, om et objekt er en instans af den specificerede klasse eller dens arving. Den tager et objekt som første parameter og klassenavnet til kontrollen som anden parameter. Returnerer true hvis objektet tilhører klassen, eller false hvis ikke.

Syntaks

php$object instanceof ClassName;

Eksempel

Lad os kontrollere, om et objekt er en instans af klassen MyClass:

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

Resultatet af kodeudførelsen:

phptrue

Eksempel

Lad os kontrollere klassearv:

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

Resultatet af kodeudførelsen:

phptrue

Eksempel

Lad os kontrollere, at et objekt ikke er en instans af en klasse:

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

Resultatet af kodeudførelsen:

phpfalse

Se også

  • funktionen get_class,
    som returnerer navnet på objektets klasse
  • funktionen is_a,
    som kontrollerer et objekts tilhørsforhold til en klasse