ReflectionParameter::getDefaultValue
(PHP 5 >= 5.0.3, PHP 7, PHP 8)
ReflectionParameter::getDefaultValue — Gets default parameter value
说明
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.
参数
此函数没有参数。
返回值
The parameters default value.
更新日志
版本 | 说明 |
---|---|
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. |
示例
示例 #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;
}
?>
以上示例会输出:
Name: test Name: bar Default value: baz
参见
- 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
+添加备注
用户贡献的备注 1 note
gmail@asmqb7 ¶
8 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().
备份地址:http://www.lvesu.com/blog/php/reflectionparameter.getdefaultvalue.php