326 of 410 menu

Funkcja is_subclass_of

Funkcja is_subclass_of sprawdza, czy obiekt lub klasa należy do potomków wskazanej klasy lub czy implementuje wskazany interfejs. Pierwszym parametrem przyjmuje obiekt lub nazwę klasy, drugim - nazwę klasy nadrzędnej lub interfejsu. Trzeci opcjonalny parametr określa, czy należy uwzględnić automatyczne ładowanie klas.

Składnia

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

Przykład

Sprawdźmy dziedziczenie prostych klas:

<?php class ParentClass {} class ChildClass extends ParentClass {} $res = is_subclass_of('ChildClass', 'ParentClass'); var_dump($res); ?>

Wynik wykonania kodu:

true

Przykład

Sprawdźmy implementację interfejsu:

<?php interface MyInterface {} class MyClass implements MyInterface {} $res = is_subclass_of('MyClass', 'MyInterface'); var_dump($res); ?>

Wynik wykonania kodu:

true

Przykład

Sprawdzanie z obiektem zamiast nazwy klasy:

<?php class Animal {} class Dog extends Animal {} $dog = new Dog(); $res = is_subclass_of($dog, 'Animal'); var_dump($res); ?>

Wynik wykonania kodu:

true

Przykład

Sprawdzanie przypadku, gdy klasa nie jest potomkiem:

<?php class A {} class B {} $res = is_subclass_of('B', 'A'); var_dump($res); ?>

Wynik wykonania kodu:

false

Zobacz też

  • funkcję is_a,
    która sprawdza przynależność do klasy
  • funkcję class_parents,
    która zwraca wszystkich rodziców
  • funkcję get_parent_class,
    która zwraca klasę nadrzędną
  • funkcję instanceof,
    operator sprawdzania instancji
Polski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wykorzystujemy pliki cookie do działania strony, analizy i personalizacji. Przetwarzanie danych odbywa się zgodnie z Polityką prywatności.
zaakceptuj wszystkie dostosuj odrzuć