Php/docs/reflectionproperty.isinitialized

提供:Dev Guides
< Php
移動先:案内検索

ReflectionProperty::isInitialized

(PHP 7 >= 7.4.0)

ReflectionProperty::isInitializedプロパティが初期化されているかをチェックする


説明

public ReflectionProperty::isInitialized ([ object $object ] ) : bool

プロパティが初期化されているかをチェックします。


パラメータ

object
プロパティが static でない場合、プロパティを取得する対象のオブジェクトを与えなければなりません。


返り値

型付きのプロパティが初期化される前か、明示的に unset() されたプロパティの場合は、 false を返します。 それ以外の全てのプロパティは、 true が返されます。


エラー / 例外

プロパティがアクセス不能な場合、 ReflectionException が投げられます。 ReflectionProperty::setAccessible() を使えば、protected や private なプロパティをアクセス可能にすることが出来ます。


例1 ReflectionProperty::isInitialized() の例

<?phpclass User{    public string $name;}$rp = new ReflectionProperty('User', 'name');$user = new User;var_dump($rp->isInitialized($user));$user->name = 'Nikita';var_dump($rp->isInitialized($user));?>

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


bool(false)
bool(true)

参考