PHP Conference China 2020

ReflectionParameter::getDefaultValue

(PHP 5 >= 5.0.3, PHP 7)

ReflectionParameter::getDefaultValueGets default parameter value

Description

public ReflectionParameter::getDefaultValue ( void ) : mixed

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

Parameters

This function has no parameters.

Return Values

The parameters default value.

Changelog

Version Description
8.0.0 This method now allows getting the default value of parameters of built-in functions and built-in class methods. Previously, a ReflectionException was thrown.

Examples

Example #1 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;
}
?>

The above example will output:

Name: test

Name: bar
Default value: baz

See Also

add a note add a note

User Contributed Notes 1 note

up
3
gmail@asmqb7
4 years ago
[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().
To Top