is_subclass_of Fonksiyonu

is_subclass_of işlevi, bir nesnenin veya sınıfın belirtilen sınıfın alt sınıflarına ait olup olmadığını veya belirtilen arayüzü uygulayıp uygulamadığını kontrol eder. İlk parametre olarak bir nesne veya sınıf adı alır, ikinci parametre olarak üst sınıf veya arayüz adını alır. Üçüncü isteğe bağlı parametre, sınıf otomatik yüklemesinin dikkate alınıp alınmayacağını belirler.

Sözdizimi

phpis_subclass_of(mixed $object_or_class, string $class, bool $allow_string = true): bool

Örnek

Basit sınıfların kalıtımını kontrol edelim:

php<?php
  class ParentClass {}
  class ChildClass extends ParentClass {}

  $res = is_subclass_of('ChildClass', 'ParentClass');
  var_dump($res);
?>

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

phptrue

Örnek

Arayüz uygulamasını kontrol edelim:

php<?php
  interface MyInterface {}
  class MyClass implements MyInterface {}

  $res = is_subclass_of('MyClass', 'MyInterface');
  var_dump($res);
?>

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

phptrue

Örnek

Sınıf adı yerine nesne ile kontrol:

php<?php
  class Animal {}
  class Dog extends Animal {}

  $dog = new Dog();
  $res = is_subclass_of($dog, 'Animal');
  var_dump($res);
?>

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

phptrue

Örnek

Bir sınıfın alt sınıf olmadığı durumu kontrol etme:

php<?php
  class A {}
  class B {}

  $res = is_subclass_of('B', 'A');
  var_dump($res);
?>

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

phpfalse

Ayrıca Bakınız

  • is_a fonksiyonu,
    bir sınıfa ait olup olmadığını kontrol eder
  • class_parents fonksiyonu,
    tüm üst sınıfları döndürür
  • get_parent_class fonksiyonu,
    üst sınıfı döndürür
  • instanceof fonksiyonu,
    örnek kontrol operatörü