instanceof operátor

Az instanceof operátor ellenőrzi, hogy egy objektum a megadott osztály példánya-e vagy annak leszármazottja. Első paraméterként egy objektumot, második paraméterként egy osztálynevet fogad el. true értéket ad vissza, ha az objektum az osztály példánya, ellenkező esetben false értéket.

Szintaxis

php$object instanceof ClassName;

Példa

Ellenőrizzük, hogy az objektum a MyClass osztály példánya-e:

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

A kód végrehajtásának eredménye:

phptrue

Példa

Ellenőrizzük az osztályok öröklődését:

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

A kód végrehajtásának eredménye:

phptrue

Példa

Ellenőrizzük, hogy az objektum nem példánya az osztálynak:

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

A kód végrehajtásának eredménye:

phpfalse

Lásd még

  • a get_class függvényt,
    amely visszaadja az objektum osztálynevét
  • a is_a függvényt,
    amely ellenőrzi egy objektum osztályhoz tartozását