Operaator instanceof

Operaator instanceof kontrollib, kas objekt on määratud klassi eksemplar või selle järeltulija. Esimeseks parameetriks võtab objekti, teiseks - klassi nime kontrollimiseks. Tagastab true, kui objekt kuulub klassi, või false vastasel juhul.

Süntaks

php$object instanceof ClassName;

Näide

Kontrollime, kas objekt on klassi MyClass eksemplar:

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

Koodi täitmise tulemus:

phptrue

Näide

Kontrollime klasside pärimist:

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

Koodi täitmise tulemus:

phptrue

Näide

Kontrollime, et objekt ei ole klassi eksemplar:

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

Koodi täitmise tulemus:

phpfalse

Vaata ka

  • funktsiooni get_class,
    mis tagastab objekti klassi nime
  • funktsiooni is_a,
    mis kontrollib objekti kuuluvust klassi