ReflectionFunctionAbstract::getNumberOfRequiredParameters

(PHP 5 >= 5.3.0, PHP 7, PHP 8)

ReflectionFunctionAbstract::getNumberOfRequiredParametersZorunlu bağımsız değişken sayısını döndürür

Açıklama

public ReflectionFunctionAbstract::getNumberOfRequiredParameters(): int

Bir işlevde tanımlı zorunlu bağımsız değişken sayısını döndürür.

Bağımsız Değişkenler

Bu işlevin bağımsız değişkeni yoktur.

Dönen Değerler

Zorunlu bağımsız değişken sayısı.

Ayrıca Bakınız

add a note add a note

User Contributed Notes 2 notes

up
4
sebastian at sebastian-eiweleit dot de
11 years ago
<?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
up
2
cesar at magic3w dot com
9 years ago
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

?>
To Top