1

リフレクションを使用して、PHP のクラスのすべてのメソッド/プロパティを一覧表示しようとしています。単純なリストが機能します。

ただし、基本クラスのプロパティとメソッドもリストされています。これをフィルタリングするにはどうすればよいですか?

わかりました!

4

1 に答える 1

3

ReflectionMethodメソッドがあることに注意してくださいgetDeclaringClass()。このメソッドは、メソッドが削除されたクラスを返します。クラスで宣言されているメソッドのみを表示するには、次のことを試してください。

$class = new ReflectionClass('YourClass');

foreach($class->getMethods() as $m) {
    if($m->getDeclaringClass()->getName() === 'YourClass') {
        echo $m->getName(), PHP_EOL;
    }
}

このようなものはどこにYourClassありますか:

class YourClass extends DOMDocument {


    public function doSomething() {
        // ...
    }


    public function doSomethingElse() {
        // ...
    }

}
于 2013-02-27T04:08:52.733 に答える