2008-12-06 8 views

Respuesta

1

Usted está buscando las capacidades de reflexión en PHP5 - documentación here.

En concreto, consulte las clases ReflectionFunction y ReflcetionMethod.

-5
+1

No. Esto es para su uso dentro de funciones, y dice cuántos argumentos se pasa a la función que se encuentre. – gnud

+0

que devolverá la cantidad de argumentos pasados ​​a la función cuando la ha llamado. El OP busca el número de argumentos en la firma de la función, que puede ser diferente. –

28

Es necesario utilizar reflection de hacer eso.

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

también vea ['getNumberOfRequiredParameters()'] (http://php.net/manual/en/reflectionfunctionabstract.getnumberofrequiredparameters.php) –

9

Reflexión es lo que está buscando aquí

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

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