获取方法参数

时间:2010-01-19 07:48:00

标签: php

让我们说我有一个类:

class SomeClass{
    function someAction($param1,$param2){}
}

有没有办法在没有实际执行方法的情况下分析像array('param1','param2') 这样的数据?最好没有php扩展或先前的代码分析(fopen ...)

2 个答案:

答案 0 :(得分:1)

我认为您可以使用Reflection class获取有关方法和参数的信息。

答案 1 :(得分:0)

太好了,谢谢大家,用

之类的东西解决了
$oRuleContainer = new cRuleContainer();
$rContainer = new ReflectionClass('cRuleContainer');

$rMethod = $rContainer->getMethod($aRule['method']);
$aArgs = $rMethod->getParameters();

if($aArgs){
    foreach($aArgs as $refArgument){
        $arrPassedArgData[$refArgument->name]=$_POST[$refArgument->name];
    }
}

if(call_user_func_array(array($oRuleContainer,$aRule['method']),$arrPassedArgData)){
//success
}

更多细节 http://kurapov.name/rus/technology/web/php/reflection_php_brms/