ReflectionClass::isUninitializedLazyObject
オブジェクトがレイジーで未初期化かどうかを調べる
説明
public bool ReflectionClass::isUninitializedLazyObject(object $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::newLazyGhost
- ReflectionClass::markLazyObjectAsInitialized
- ReflectionClass::initializeLazyObject