Funksie is_subclass_of

Die funksie is_subclass_of kontroleer of 'n voorwerp of klas behoort tot die afstammelinge van die gespesifiseerde klas, of of dit die gespesifiseerde koppelvlak implementeer. Die eerste parameter neem 'n voorwerp of klasnaam, die tweede - die naam van die ouerklas of koppelvlak. Die derde opsionele parameter bepaal of outomatiese laai van klasse in ag geneem moet word.

Sintaksis

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

Voorbeeld

Kom ons kontroleer die oorkerving van eenvoudige klasse:

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

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

Resultaat van die kode-uitvoering:

phptrue

Voorbeeld

Kom ons kontroleer die implementering van 'n koppelvlak:

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

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

Resultaat van die kode-uitvoering:

phptrue

Voorbeeld

Kontrole met 'n voorwerp in plaas van 'n klasnaam:

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

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

Resultaat van die kode-uitvoering:

phptrue

Voorbeeld

Kontrole van die geval waar 'n klas nie 'n afstammeling is nie:

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

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

Resultaat van die kode-uitvoering:

phpfalse

Sien ook

  • funksie is_a,
    wat behoortheid aan 'n klas kontroleer
  • funksie class_parents,
    wat alle ouers teruggee
  • funksie get_parent_class,
    wat die ouerklas teruggee
  • funksie instanceof,
    die operateur om 'n voorbeeld te kontroleer