ReflectionProperty::isInitialized

(PHP 7 >= 7.4.0, PHP 8)

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

説明

public ReflectionProperty::isInitialized(?object $object = null): bool

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

パラメータ

object

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

戻り値

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

エラー / 例外

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

変更履歴

バージョン 説明
8.0.0 object は、nullable になりました。

例1 ReflectionProperty::isInitialized() の例

<?php
class 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)

参考

関連キーワード:  チェック, 初期, ReflectionProperty, isInitialized, アクセス, 参考, 出力, able, バージョン, 履歴