(PHP 5, PHP 7, PHP 8)
ReflectionClass::getInterfaces β ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ
ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ.
Π‘ΠΈΠ³Π½Π°ΡΡΡΠ° ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ².
ΠΡΡΠΎΡΠΈΠ°ΡΠΈΠ²Π½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² (array) ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ², Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΊΠ»ΡΡΠ°ΠΌΠΈ ΡΠ²Π»ΡΡΡΡΡ ΠΈΠΌΠ΅Π½Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ², Π° Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ - ΠΎΠ±ΡΠ΅ΠΊΡΡ ReflectionClass.
ΠΡΠΈΠΌΠ΅Ρ #1 ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ReflectionClass::getInterfaces()
<?php
interface Foo { }
interface Bar { }
class Baz implements Foo, Bar { }
$rc1 = new ReflectionClass("Baz");
print_r($rc1->getInterfaces());
?>ΠΡΠ²ΠΎΠ΄ ΠΏΡΠΈΠ²Π΅Π΄ΡΠ½Π½ΠΎΠ³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ° Π±ΡΠ΄Π΅Ρ ΠΏΠΎΡ ΠΎΠΆ Π½Π°:
Array
(
[Foo] => ReflectionClass Object
(
[name] => Foo
)
[Bar] => ReflectionClass Object
(
[name] => Bar
)
)