查询

ReflectionParameter::isDefaultValueAvailable()函数—用法及示例

「 检查参数是否有默认值 」


函数名称:ReflectionParameter::isDefaultValueAvailable()

适用版本:PHP 5 >= 5.0.3, PHP 7

函数说明:ReflectionParameter::isDefaultValueAvailable() 方法用于检查参数是否有默认值。

用法示例:

<?php
function myFunction($param1, $param2 = 'default')
{
    // 创建反射对象
    $reflection = new ReflectionFunction('myFunction');

    // 获取参数对象
    $parameters = $reflection->getParameters();
    
    foreach ($parameters as $parameter) {
        // 检查参数是否有默认值
        if ($parameter->isDefaultValueAvailable()) {
            echo "参数 " . $parameter->getName() . " 有默认值\n";
        } else {
            echo "参数 " . $parameter->getName() . " 没有默认值\n";
        }
    }
}

myFunction('value');
?>

输出结果:

参数 param1 没有默认值
参数 param2 有默认值

在上面的示例中,我们定义了一个名为myFunction的函数,其中有两个参数,其中$param2有一个默认值。然后,我们通过创建ReflectionFunction对象来获取函数的参数对象,并使用isDefaultValueAvailable()方法检查每个参数是否有默认值。最后,根据检查结果输出相应的消息。

请注意,isDefaultValueAvailable()方法只能在反射参数对象上调用,因此我们首先需要通过ReflectionFunction(或ReflectionMethod)来获取参数对象。

补充纠错
热门PHP函数
分享链接