« ReflectionClass::isTrait
ReflectionClass::isUserDefined »

ReflectionClass::isUninitializedLazyObject

(PHP 8 >= 8.4.0)

ReflectionClass::isUninitializedLazyObject — オブジェクトがレイジーで未初期化かどうかを調べる

説明

public function ReflectionClass::isUninitializedLazyObject(object $object): bool

オブジェクトがレイジーで未初期化かどうかを調べます。

パラメータ

object

調べるオブジェクト。

戻り値

object が未初期化のレイジーオブジェクトであれば true を、 そうでなければ false を返します。

例

例1 基本的な使用法

<?php
class Example
{
    public function __construct(public int $prop) {
    }
}

$reflector = new ReflectionClass(Example::class);

$object = $reflector->newLazyGhost(function ($object) {
    echo "Initializer called\n";
    $object->__construct(1);
});

var_dump($reflector->isUninitializedLazyObject($object));

var_dump($object->prop);

var_dump($reflector->isUninitializedLazyObject($object));
?>

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

bool(true)
Initializer called
int(1)
bool(false)

参考

関連キーワード:
ReflectionClass   レイジー   初期化   isUninitializedLazyObject   reflector   dump   Example   construct   prop   newLazyGhost   Initializer   called   isTrait   isUserDefined   基本的   参考   ゴースト   インスタンス   markLazyObjectAsInitialized   イニシャライザ   ファクトリ   マーク   initializeLazyObject   強制的
関連する関数・ページ:
reflectionclass.initializelazyobject   reflectionclass.marklazyobjectasinitialized   reflectionclass.newlazyghost   reflectionclass.resetaslazyproxy   reflectionclass.getlazyinitializer   reflectionclass.newlazyproxy