ReflectionClass::initializeLazyObject

(PHP 8 >= 8.4.0)

ReflectionClass::initializeLazyObjectForces initialization of a lazy object

Описание

public ReflectionClass::initializeLazyObject(object $object): object

Forces initialization of the specified object. This method has no effect if the object is not lazy or has already been initialized. Otherwise, initialization proceeds as described in the Initialization Sequence.

Замечание: In most cases, calling this method is unnecessary, as lazy objects initialize themselves automatically when their state is observed or modified.

Список параметров

object
The object to initialize.

Возвращаемые значения

If object is a lazy proxy, returns its real instance. Otherwise, returns object itself.

Примеры

Пример #1 Basic usage

<?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($object);

$reflector->initializeLazyObject($object);

var_dump($object);
?>

Результат выполнения приведённого примера:

lazy ghost object(Example)#3 (0) {
  ["prop"]=>
  uninitialized(int)
}
Initializer called
object(Example)#3 (1) {
  ["prop"]=>
  int(1)
}

Смотрите также

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top