326 of 410 menu

Funzione is_subclass_of

La funzione is_subclass_of verifica se un oggetto o una classe appartiene alle sottoclassi della classe specificata o se implementa l'interfaccia specificata. Il primo parametro accetta un oggetto o il nome di una classe, il secondo - il nome della classe genitore o dell'interfaccia. Il terzo parametro opzionale determina se è necessario considerare il caricamento automatico delle classi.

Sintassi

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

Esempio

Verifichiamo l'ereditarietà di classi semplici:

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

Risultato dell'esecuzione del codice:

true

Esempio

Verifichiamo l'implementazione di un'interfaccia:

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

Risultato dell'esecuzione del codice:

true

Esempio

Verifica con un oggetto invece del nome della classe:

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

Risultato dell'esecuzione del codice:

true

Esempio

Verifica del caso in cui una classe non è una sottoclasse:

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

Risultato dell'esecuzione del codice:

false

Vedi anche

  • la funzione is_a,
    che verifica l'appartenenza a una classe
  • la funzione class_parents,
    che restituisce tutti i genitori
  • la funzione get_parent_class,
    che restituisce la classe genitore
  • la funzione instanceof,
    operatore di verifica dell'istanza
Italiano
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesia日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Utilizziamo i cookie per il funzionamento del sito, l'analisi e la personalizzazione. I dati vengono elaborati in conformità con la Politica sulla privacy.
accetta tutto personalizza rifiuta