Operatori instanceof

Operatori instanceof kontrollon nëse një objekt është instancë e klasës së specifikuar ose e trashëgimtarit të saj. Si parametër të parë pranon një objekt, të dytin - emrin e klasës për kontroll. Kthen true nëse objekti i përket klasës ose false në rast të kundërt.

Sintaksa

php$object instanceof ClassName;

Shembull

Le të kontrollojmë nëse një objekt është instancë e klasës MyClass:

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

Rezultati i ekzekutimit të kodit:

phptrue

Shembull

Le të kontrollojmë trashëgiminë e klasave:

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

Rezultati i ekzekutimit të kodit:

phptrue

Shembull

Le të kontrollojmë që një objekt nuk është instancë e një klase:

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

Rezultati i ekzekutimit të kodit:

phpfalse

Shihni gjithashtu

  • funksionin get_class,
    i cili kthen emrin e klasës së objektit
  • funksionin is_a,
    i cili kontrollon përkatësinë e një objekti në një klasë