私はインターフェイスを実装するクラスを持っており、そのインターフェイスは別のインターフェイスを拡張しています。設定は次のようになります。PHPでReflectionクラスを使用して拡張インターフェイスを取得する方法
interface A{
}
interface B extends A {
}
class C implements B {
}
$obj = new C();
オブジェクト$ objがどのインタフェースを実装しているか知りたいと思います。私はReflectionClassオブジェクトを作成しようとしましたし、その後でgetInterfacesメソッドを呼び出し、それは私だけのインタフェースBを返します。
$reflection = new ReflectionClass($obj);
print_r($reflection->getInterfaces());
(私もインターフェイス名を使用してReflectionClassオブジェクトを作成しようとしましたが、私はでgetInterfacesを呼び出すとき)メソッドでは、空の配列を返します。
特定のインターフェイスを拡張するインターフェイス名を取得する方法を知っている人はいますか?あなたの助けのための
どうもありがとう、 スティーブ
できます再現されない、['ReflectionClass :: getInterfaces()'](http://www.php.net/manua l/en/reflectionclass.getinterfaces.php)はあなたが探しているものを提供します。デモ:http://codepad.viper-7.com/PoDCHm – hakre