ReflectionParameter::getDefaultValueConstantName

デフォルト値が定数あるいは null の場合に、その定数名を返す

説明

public stringnull ReflectionParameter::getDefaultValueConstantName()

デフォルト値が定数か null の場合に、 (内部またはユーザー定義の) 関数やメソッドのデフォルト値の定数名を返します。 パラメータがオプションでない場合は、 ReflectionException がスローされます。

パラメータ

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

戻り値

成功した場合に文字列、失敗した場合に null を返します。

変更履歴

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

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

<?php
function foo($test, $bar = PHP_INT_MIN)
{
    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->getDefaultValueConstantName() . PHP_EOL;
    }
    echo PHP_EOL;
}
?>

上の例の出力は以下となります。

Name: test

Name: bar
Default value: PHP_INT_MIN

参考

  • ReflectionParameter::isOptional
  • ReflectionParameter::isDefaultValueConstant
  • ReflectionParameter::getDefaultValue