- > getMethod(“”)抛出“未定义的方法”

时间:2013-09-30 20:45:20

标签: php reflection

我一直在讨厌这个问题。我在这里打了一堵完整的砖墙。我正在尝试从方法名称收集有关方法的信息。但是php不知道getMethod()tho应该是php中“反射”的一部分。 (http://www.php.net/manual/en/reflectionclass.getmethod.php) 在链接那里,这个老兄提到它会抛出一个错误,这似乎是我的情况,但没有答案...

就我而言,代码如下所示:

$params = $controllerInstance->getMethod($methodName)->getParameters();

并且该类看起来像这样:

class accountController extends controller{

    public function createUser(account $accountModelInstance){
        return "this is a response!";
    }

}

我担心这个:

class accountController extends controller{
    public function getMethod(string method){
        return this->{method};
    }
}

如果你愿意,我正在使用postgreSQL插件运行WAMP Server

1 个答案:

答案 0 :(得分:3)

ReflectionClass是一个班级。你没有定义任何东西,只需使用它:

$class = new ReflectionClass($controllerInstance);
$params = $class->getMethod($methodName)->getParameters();

It works!