如何从方法列表中排除继承的方法,反射(PHP)
我试图使用反射列出PHP中类的所有方法/属性。这个简单的列表很有效 但它也列出了基类的属性和方法。我如何过滤这个 tks 请注意,它具有该方法。此方法返回该方法所在的类。也仅显示在类中声明的方法,您应该尝试以下操作:如何从方法列表中排除继承的方法,反射(PHP),php,class,reflection,Php,Class,Reflection,我试图使用反射列出PHP中类的所有方法/属性。这个简单的列表很有效 但它也列出了基类的属性和方法。我如何过滤这个 tks 请注意,它具有该方法。此方法返回该方法所在的类。也仅显示在类中声明的方法,您应该尝试以下操作: $class = new ReflectionClass('YourClass'); foreach($class->getMethods() as $m) { if($m->getDeclaringClass()->getName() === 'You
$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() {
// ...
}
}
请注意,对于编辑问题和回答问题,属性和常量+1的作用是相同的。谢谢!很难理解:)真棒的回答,tks!!!