PHP Conference Nagoya 2025

ReflectionClass::resetAsLazyProxy

(PHP 8 >= 8.4.0)

ReflectionClass::resetAsLazyProxyRedefine um objeto e o marca como lento

Descrição

public ReflectionClass::resetAsLazyProxy(object $object, callable $factory, int $options = 0): void

O comportamento deste método é o mesmo de ReflectionClass::resetAsLazyGhost() exceto que ele usa a estratégia de proxy.

O próprio objeto definido em object se torna o proxy. Da mesma forma que ReflectionClass::resetAsLazyGhost(), o objeto não é substituído por outro e sua identidade não muda, mesmo após a inicialização. O proxy e a instância real são objetos distintos, com identidades distintas.

Parâmetros

object
Um objeto não-lento ou um objeto lento inicializado.
factory
Uma função de retorno fábrica com a mesma assinatura e finalidade que em ReflectionClass::newLazyProxy().
options

options pode ser uma combinação das seguintes opções:

ReflectionClass::SKIP_INITIALIZATION_ON_SERIALIZE
Por padrão, a serialização de um objeto lento aciona sua inicialização. Definir esta opção impede a inicialização, permitindo que objetos lentos sejam serializados sem serem inicializados.
ReflectionClass::SKIP_DESTRUCTOR
Por padrão, o destrutor de objetos é chamado (se houver) antes de torná-lo lento. Isso fornece segurança em relação a qualquer estado preexistente no objeto. Esta opção desativa esse comportamento, permitindo que os objetos sejam redefinidos como lentos sem chamar o destrutor.

Valor Retornado

Nenhum valor é retornado.

Erros/Exceções

Uma exceção ReflectionException é lançada se o objeto for lento e não inicializado.

Um Error é lançado se o objeto estiver sendo inicializado, ou se as propriedades do objeto estão sendo iteradas com foreach.

Veja Também

adicione uma nota

Notas Enviadas por Usuários (em inglês)

Não há notas de usuários para esta página.
To Top