2

我的问题很像这样:PHP: Get argument count

除了我需要计算一个方法的参数(如果你愿意的话,参数),但这个方法是在一个对象内部。

我试过这个:

    $reflection = new ReflectionFunction($_SITE,$acao);
    $qtdArgumentos = $reflection->getNumberOfParameters();

和这个 :

    $reflection = new ReflectionFunction($_SITE->$acao);
    $qtdArgumentos = $reflection->getNumberOfParameters();

并得到这个错误:

致命错误:C:\wamp\www\project\index.php:20 中未捕获的异常“ReflectionException”和消息“函数 $_SITE,$acao() 不存在”堆栈跟踪:#0 C:\wamp\www\ project\index.php(20): ReflectionFunction->__construct('$_SITE,$acao') #1 {main} 在第 20 行的 C:\wamp\www\projeto\index.php 中抛出

有谁知道另一种计算方法参数数量的方法是在对象内部还是我的代码的解决方法?

4

1 回答 1

2

我认为你需要的是ReflectionMethod

 $reflection = new ReflectionMethod($_SITE, $acao);
 $qtdArgumentos = $reflection->getNumberOfParameters();
于 2012-12-12T19:57:16.590 回答