Функција 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,
    која ги враќа интерфејсите на класата