instanceof Operatörü

instanceof operatörü, bir nesnenin belirtilen sınıfın örneği veya onun miras alanı olup olmadığını kontrol eder. İlk parametre olarak nesneyi, ikinci parametre olarak kontrol edilecek sınıfın adını alır. Nesne sınıfa aitse true, aksi takdirde false döndürür.

Sözdizimi

php$object instanceof ClassName;

Örnek

Bir nesnenin MyClass sınıfının örneği olup olmadığını kontrol edelim:

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

Kodun çalıştırılmasının sonucu:

phptrue

Örnek

Sınıf kalıtımını kontrol edelim:

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

Kodun çalıştırılmasının sonucu:

phptrue

Örnek

Bir nesnenin bir sınıfın örneği olmadığını kontrol edelim:

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

Kodun çalıştırılmasının sonucu:

phpfalse

Ayrıca Bakınız

  • get_class işlevi,
    bir nesnenin sınıf adını döndürür
  • is_a işlevi,
    bir nesnenin sınıfa ait olup olmadığını kontrol eder