• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • ReflectionParameter::getDefaultValue()

    (PHP 5 >= 5.0.3, PHP 7)

    Gets default parameter value

    说明

    publicReflectionParameter::getDefaultValue(void) : mixed

    Gets the default value of the parameter for a user-defined function or method. If the parameter is not optional aReflectionExceptionwill be thrown.

    参数

    此函数没有参数。

    返回值

    The parameters default value.

    范例

    Getting default values of function parameters

    <?php
    function foo($test, $bar = 'baz')
    {
        echo $test . $bar;
    }
    $function = new ReflectionFunction('foo');
    foreach ($function->getParameters() as $param) {
        echo 'Name: ' . $param->getName() . PHP_EOL;
        if ($param->isOptional()) {
            echo 'Default value: ' . $param->getDefaultValue() . PHP_EOL;
        }
        echo PHP_EOL;
    }
    ?>
    

    以上例程会输出:

    Name: test
    Name: bar
    Default value: baz
    

    注释

    Note:

    Due to implementation details, it is not possible to get the default value of built-in functions or methods of built-in classes. Trying to do this will result aReflectionExceptionbeing thrown.

    参见

    • ReflectionParameter::isOptional() Checks if optional
    • ReflectionParameter::isDefaultValueAvailable() 检查是否有默认值。
    • ReflectionParameter::getDefaultValueConstantName() Returns the default value's constant name if default value is constant or null
    • ReflectionParameter::isPassedByReference() Checks if passed by reference
    [Editor's note: fixed on user's request]
    Getting `Uncaught ReflectionException: Internal error: Failed to retrieve the default value`?
    You have to wrap this inside ->isDefaultValueAvailable().