我正在尝试使用反射列出 PHP 中类的所有方法/属性。简单的清单有效。
但它也列出了基类的属性和方法。我该如何过滤这个?
谢谢!
注意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() {
// ...
}
}