Funkcja class_implements

Funkcja class_implements zwraca tablicę nazw interfejsów, które implementuje wskazana klasa lub interfejs. W pierwszym parametrze przekazywany jest obiekt lub nazwa klasy w postaci ciągu znaków, a drugi opcjonalny parametr określa, czy należy użyć automatycznego ładowania.

Składnia

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

Przykład

Pobierzmy interfejsy dla wbudowanej klasy Exception:

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

Wynik wykonania kodu:

php['Throwable']

Przykład

Stwórzmy własny interfejs i klasę, następnie sprawdźmy zaimplementowane interfejsy:

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

Wynik wykonania kodu:

php['MyInterface']

Przykład

Sprawdźmy interfejsy dla samego interfejsu:

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

Wynik wykonania kodu:

php['ParentInterface']

Zobacz też

  • funkcję class_parents,
    która zwraca klasy rodzicielskie
  • funkcję class_uses,
    która zwraca traity używane przez klasę