(PHP 5 >= 5.0.3)
ReflectionFunctionAbstract::getNumberOfParameters — Gets number of parameters
Get the number of parameters that a function defines, both optional and required.
Diese Funktion ist bis jetzt nicht dokumentiert. Es steht nur die Liste der Argumente zur Verfügung.
Diese Funktion hat keine Parameter.
The number of parameters.
Working on a new MVC Application Framework i use this method to check how many arguments are required before calling the sub method!
Example
<?php
$this->method_args_count = $this->CReflection
->getMethod($Route->getMethod())
->getNumberOfParameters();
//Maybe be 5 but if uri is /controller/method/single_param/ we only of 1
$this->params = $Route->getParams(); //0 in some cases
if($this->method_args_count > count($this->params))
{
$this->difference = ($this->method_args_count - count($this->params));
for($i=0;$i<=$this->difference;$i++)
{
$this->params[] = false;
}
}
//Call the method with correct amount of params
// but as false for params that have not been passed!
call_user_func_array(array(new $this->obj,$Route->getMethod()),$this->params);
?>