ReflectionProperty::getDefaultValue

プロパティで宣言されたデフォルト値を返す

説明

public mixed ReflectionProperty::getDefaultValue()

プロパティに明示または黙示的に宣言されているデフォルト値を取得します。

パラメータ

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

戻り値

プロパティに何かしらデフォルト値が存在する場合(nullも含みます)、 それを返します。デフォルト値がない場合、null を返します。 デフォルト値が null の場合と、型付きプロパティが初期化されてない場合は区別できません。 それらを区別するには、 ReflectionProperty::hasDefaultValue を使って下さい。

例1 ReflectionProperty::getDefaultValue の例

<?php
class Foo {
    public $bar = 1;
    public ?int $baz;
    public int $boing = 0;
    public function __construct(public string $bak = "default") { }
}

$ro = new ReflectionClass(Foo::class);
var_dump($ro->getProperty('bar')->getDefaultValue());
var_dump($ro->getProperty('baz')->getDefaultValue());
var_dump($ro->getProperty('boing')->getDefaultValue());
var_dump($ro->getProperty('bak')->getDefaultValue());
?>

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

int(1)
NULL
int(0)
NULL

参考

  • ReflectionProperty::hasDefaultValue