(PHP 5 >= 5.3.0, PHP 7, PHP 8)
ReflectionFunctionAbstract::getNumberOfRequiredParameters — Gets number of required parameters
Get the number of required parameters that a function defines.
This function has no parameters.
The number of required parameters.
It's interesting to note that this function will treat optional parameters that come before a required parameter as required too. This is good since it allows you to verify that the function will be receiving enough parameters for the it to work, regardless where they are located.
<?php
class MyTest() {
public function test($a = null, $b) {}
public function test2($a = null, $b, $c = null) {}
}
//Create the reflection
$r = new \ReflectionMethod('MyTest', 'test');
$r2 = new \ReflectionMethod('MyTest', 'test2');
//Verify the numbers
echo 'Test: ' . $r->getNumberOfRequiredParameters()); //Output: 2
echo 'Test2: ' . $r->getNumberOfRequiredParameters()); //Output: 2
?>
<?php
namespace ExampleWorld;
// The Class
class helloWorld {
/* Method with two required arguments */
public function requiredTwoArguments ( $var1, $var2 ) {
// Some code ...
}
/* Method with two arguments, but just one is required */
public function requiredOneArgument ( $var1, $var2 = false ) {
// Some code ...
}
}
$r = new \ReflectionMethod ( 'ExampleWorld\helloWorld', 'requiredTwoArguments' );
echo $r->getNumberOfRequiredParameters ();
$r = new \ReflectionMethod ( 'ExampleWorld\helloWorld', 'requiredOneArgument' );
echo $r->getNumberOfRequiredParameters ();
// Output: 2 1