326 of 410 menu

Función is_subclass_of

La función is_subclass_of verifica si un objeto o clase pertenece a las subclases de la clase especificada o si implementa la interfaz especificada. El primer parámetro acepta un objeto o nombre de clase, el segundo - el nombre de la clase padre o interfaz. El tercer parámetro opcional determina si se debe permitir la carga automática de clases.

Sintaxis

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

Ejemplo

Comprobemos la herencia de clases simples:

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

Resultado de la ejecución del código:

true

Ejemplo

Comprobemos la implementación de una interfaz:

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

Resultado de la ejecución del código:

true

Ejemplo

Comprobación con objeto en lugar del nombre de la clase:

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

Resultado de la ejecución del código:

true

Ejemplo

Comprobación del caso cuando una clase no es subclase:

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

Resultado de la ejecución del código:

false

Véase también

  • la función is_a,
    que verifica la pertenencia a una clase
  • la función class_parents,
    que retorna todos los padres
  • la función get_parent_class,
    que retorna la clase padre
  • la función instanceof,
    operador de verificación de instancia
Español
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Usamos cookies para el funcionamiento del sitio, análisis y personalización. El procesamiento de datos se realiza de acuerdo con la Política de privacidad.
aceptar todas configurar rechazar