Получение метода params - PullRequest
0 голосов
/ 19 января 2010

Допустим, у меня есть класс, как:

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

Есть ли способ получить данные анализа, такие как array('param1','param2') без фактического выполнения метода? Желательно без расширений php или предварительного анализа кода (fopen ...)

Ответы [ 2 ]

1 голос
/ 19 января 2010

Я думаю, вы можете использовать класс Reflection , чтобы получить информацию о методах и параметрах.

0 голосов
/ 19 января 2010

Отлично, спасибо всем, решил что-то вроде

$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/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...