我正在为我的CMS制作一个插件系统,为了使事件注册系统变得简单,我需要一个可以执行以下操作的功能。
我需要一个函数,它将返回指定类中包含其参数类的所有函数。当然,如果从类中获取函数的函数和获取函数参数的所有类名的函数不同,那就没问题了。
例如,如果您有以下具有这些功能的类;
class MyClass {
public function myFunction(Event $event) {
// Function code
}
}
如果可以返回这样的东西,那将是非常棒的;
Array() {
'myFunction' => Array() {
0 => 'Event'
}
}
有办法做到这一点吗?
提前致谢, 蒂姆维斯特
答案 0 :(得分:5)
您正在引用Reflection API。反映classes或methods可能会让您做出您需要的事情。例如,尝试:
$class = new ReflectionClass('MyClass');
$methods = $class->getMethods();
print_r($methods);
foreach ($methods as $method) {
print_r($method->getParameters());
}