Функция class_parents

Функция class_parents возвращает массив с именами всех родительских классов для указанного класса или объекта. Первым параметром принимает объект или имя класса, а вторым (необязательным) - флаг автозагрузки.

Синтаксис

phpclass_parents(
  object|string $class,
  [bool $autoload = true]
): array|false

Пример

Получим родительские классы для объекта:

php<?php
  class ParentClass {}
  class ChildClass extends ParentClass {}
  
  $obj = new ChildClass();
  $res = class_parents($obj);
  print_r($res);
?>

Результат выполнения кода:

php['ParentClass' => 'ParentClass']

Пример

Получим родительские классы по имени класса:

php<?php
  class GrandParent {}
  class ParentClass extends GrandParent {}
  class ChildClass extends ParentClass {}
  
  $res = class_parents('ChildClass');
  print_r($res);
?>

Результат выполнения кода:

php['ParentClass' => 'ParentClass', 'GrandParent' => 'GrandParent']

Пример

Проверим работу с несуществующим классом:

php<?php
  $res = class_parents('NonExistentClass', false);
  var_dump($res);
?>

Результат выполнения кода:

phpfalse

Смотрите также

  • функцию class_implements,
    которая возвращает интерфейсы класса
  • функцию get_class,
    которая возвращает имя класса объекта
  • функцию is_subclass_of,
    которая проверяет наследование классов