ReflectionParameter::getDefaultValue

パラメータのデフォルト値を取得する

説明

public mixed ReflectionParameter::getDefaultValue()

(内部またはユーザー定義の) 関数あるいはメソッドで、パラメータのデフォルト値を取得します。 省略可能なパラメータでない場合は ReflectionException がスローされます。

パラメータ

この関数にはパラメータはありません。

戻り値

パラメータのデフォルト対を返します。

変更履歴

バージョン 説明
8.0.0 ビルトイン関数 や ビルトインクラス のメソッドについても、デフォルト値を取得できるようになりました。 これより前のバージョンでは、ReflectionException がスローされていました。

例1 関数のパラメータのデフォルト値を取得する

<?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
  • ReflectionParameter::isDefaultValueAvailable
  • ReflectionParameter::getDefaultValueConstantName
  • ReflectionParameter::isPassedByReference