Функцыя is_a

Функцыя is_a прымае аб'ект і імя класа, вяртаючы true, калі аб'ект з'яўляецца асобнікам гэтага класа ці яго нашчадка. Трэцім параметрам можна паказаць, ці трэба ўлічваць наследаванне (па змаўчанні true).

Сінтаксіс

phpis_a(object, class_name, allow_string = true);

Прыклад

Праверым, ці належыць аб'ект да класа stdClass:

php<?php
  $obj = new stdClass();
  var_dump(is_a($obj, 'stdClass'));
?>

Вынік выканання кода:

phptrue

Прыклад

Праверым наследаванне класаў:

php<?php
  class ParentClass {}
  class ChildClass extends ParentClass {}
  
  $child = new ChildClass();
  var_dump(is_a($child, 'ParentClass'));
?>

Вынік выканання кода:

phptrue

Прыклад

Праверым працу з інтэрфейсамі:

php<?php
  interface MyInterface {}
  class MyClass implements MyInterface {}
  
  $obj = new MyClass();
  var_dump(is_a($obj, 'MyInterface'));
?>

Вынік выканання кода:

phptrue

Глядзіце таксама

  • функцыю is_subclass_of,
    якая правярае наследаванне
  • функцыю instanceof,
    аператар праверкі асобніка
  • функцыю get_class,
    якая вяртае клас аб'екта
  • функцыю class_implements,
    якая вяртае інтэрфейсы класа