【发布时间】:2011-01-01 22:12:22
【问题描述】:
我正在为 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 将不起作用)。
【问题讨论】:
-
在回复您的 cmets 时,我不是要您实例化 Foo 的新实例,而是要您使用 STATIC 字符串静态访问该类。学习 Scopes Genius...
-
由于您的回复不可用,我无法验证这一点,但我相信您的陈述类似于“如果您实例化 Bar 将自动实例化 Foo”。问题不是我对范围的了解,问题是您的帖子在静态级别和实例上都提到了一些东西。
-
我的解决方案是
$class_methods = get_class_methods("Bar");...它不会实例化任何东西。 -
我已经为你取消了我的问题。