列出给定类的所有方法,不包括PHP中的父类的方法

前端之家收集整理的这篇文章主要介绍了列出给定类的所有方法,不包括PHP中的父类的方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在为 PHP构建一个单元测试框架,如果有一种方法可以获得排除父类方法的对象方法的列表,我很好奇.所以给出这个:
class Foo
{

    public function doSomethingFooey()
    {
        echo 'HELLO THERE!';
    }
}

class Bar extends Foo
{
    public function goToTheBar()
    {
        // DRINK!
    }
}

我想要一个函数,给定参数new Bar()返回:

array( 'goToTheBar' );

无需实例化Foo的实例. (这意味着get_class_methods将不起作用).

使用 ReflectionClass,例如:
$f = new ReflectionClass('Bar');
$methods = array();
foreach ($f->getMethods() as $m) {
    if ($m->class == 'Bar') {
        $methods[] = $m->name;
    }
}
print_r($methods);

猜你在找的PHP相关文章