ReflectionClass::isUninitializedLazyObject
(PHP 8 >= 8.4.0)
ReflectionClass::isUninitializedLazyObject — オブジェクトがレイジーで未初期化かどうかを調べる
説明
オブジェクトがレイジーで未初期化かどうかを調べます。
パラメータ
object
- 調べるオブジェクト。
例
例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() - レイジーオブジェクトを強制的に初期化する
+add a note
User Contributed Notes
There are no user contributed notes for this page.
↑ and ↓ to navigate •
Enter to select •
Esc to close
Press Enter without
selection to search using Google