如何在php中动态检查函数的参数个数

时间:2008-12-06 21:14:38

标签: php

如何在运行时主页上检查方法或函数在PHP中的许多参数。

例如

class foo {
   function bar ( arg1, arg2 ){
    .....
   }
}

我需要知道是否有办法运行类似

的方法
get_func_arg_number ( "foo", "bar" )

,结果为

2

4 个答案:

答案 0 :(得分:28)

您需要使用reflection来执行此操作。

$method = new ReflectionMethod('foo', 'bar');
$num = $method->getNumberOfParameters();

答案 1 :(得分:9)

反思就是你在这里的目标

class foo {
   function bar ( $arg1, $arg2 ){

   }
}
$ReflectionFoo = new ReflectionClass('foo');
echo $ReflectionFoo->getMethod('bar')->getNumberOfParameters();

答案 2 :(得分:1)

您正在寻找PHP5中的反射功能 - 文档here

具体来说,请查看ReflectionFunction和ReflcetionMethod类。

答案 3 :(得分:-5)

我相信你正在寻找func_num_args()

http://us3.php.net/manual/en/function.func-num-args.php