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);?>