Как динамически проверять количество аргументов функции в php

как я могу проверить во время работы многие параметры, которые метод или функция имеют в PHP.

Пример

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

Мне нужно знать, есть ли способ запустить что-то вроде

get_func_arg_number ( "foo", "bar" )

и результат будет

2

Ответ 1

Для этого вам нужно использовать reflection.

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

Ответ 2

Отражение - это то, что вы здесь здесь

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

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

Ответ 3

Вы ищете возможности отражения в PHP5 - документация здесь.

В частности, посмотрите классы ReflectionFunction и ReflcetionMethod.