ReflectionFunctionAbstract::getNumberOfParameters()
(PHP 5 >= 5.3.0, PHP 7)
获取参数数目
说明
public ReflectionFunctionAbstract::getNumberOfParameters(void) : int
获取函数定义的参数数目,包括可选参数
Warning本函数还未编写文档,仅有参数列表。
参数
此函数没有参数。
返回值
参数的个数
参见
- ReflectionFunctionAbstract::getNumberOfRequiredParameters() 获取必须输入参数个数
func_num_args()
Returns the number of arguments passed to the function
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); ?>