PHP Conference Japan 2024

ReflectionFunctionAbstract::getNumberOfRequiredParameters

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

ReflectionFunctionAbstract::getNumberOfRequiredParameters获取所需参数的数量

描述

public ReflectionFunctionAbstract::getNumberOfRequiredParameters(): int

获取函数定义的所需参数的数量。

参数

此函数没有参数。

返回值

所需参数的数量。

添加注释

用户贡献的注释 2 条注释

cesar at magic3w dot com
9 年前
值得注意的是,此函数也将出现在所需参数之前的可选参数也视为必需参数。这很好,因为它允许您验证函数是否会接收足够的参数以使其正常工作,无论这些参数位于何处。

<?php

class MyTest() {
public function
test($a = null, $b) {}
public function
test2($a = null, $b, $c = null) {}
}

//创建反射
$r = new \ReflectionMethod('MyTest', 'test');
$r2 = new \ReflectionMethod('MyTest', 'test2');

//验证数量
echo 'Test: ' . $r->getNumberOfRequiredParameters()); //输出:2
echo 'Test2: ' . $r->getNumberOfRequiredParameters()); //输出:2

?>
sebastian at sebastian-eiweleit dot de
11 年前
<?php
namespace ExampleWorld;
// 类
class helloWorld {
/* 带有两个必需参数的方法 */

public function requiredTwoArguments ( $var1, $var2 ) {
// 一些代码 ...
}

/* 带有两个参数的方法,但只有一个是必需的 */
public function requiredOneArgument ( $var1, $var2 = false ) {
// 一些代码 ...
}
}

$r = new \ReflectionMethod ( 'ExampleWorld\helloWorld', 'requiredTwoArguments' );
echo
$r->getNumberOfRequiredParameters ();

$r = new \ReflectionMethod ( 'ExampleWorld\helloWorld', 'requiredOneArgument' );
echo
$r->getNumberOfRequiredParameters ();

// 输出:2 1
To Top