Функция class_implements

Функцията class_implements връща масив от имена на интерфейси, които са реализирани от указания клас или интерфейс. В първия параметър се подава обект или име на клас във формата на низ, а вторият незадължителен параметър определя дали да се използва автоматично зареждане.

Синтаксис

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

Пример

Нека получим интерфейсите за вградения клас Exception:

php<?php
  $res = class_implements('Exception');
  print_r($res);
?>

Резултат от изпълнението на кода:

php['Throwable']

Пример

Нека създадем собствен интерфейс и клас, след което проверим реализираните интерфейси:

php<?php
  interface MyInterface {}
  class MyClass implements MyInterface {}
  
  $res = class_implements('MyClass');
  print_r($res);
?>

Резултат от изпълнението на кода:

php['MyInterface']

Пример

Нека проверим интерфейсите за самия интерфейс:

php<?php
  interface ParentInterface {}
  interface ChildInterface extends ParentInterface {}
  
  $res = class_implements('ChildInterface');
  print_r($res);
?>

Резултат от изпълнението на кода:

php['ParentInterface']

Вижте също

  • функцията class_parents,
    която връща родителските класове
  • функцията class_uses,
    която връща трейтовете, използвани от класа