2024 年 PHP Conference Japan

ReflectionClass::resetAsLazyProxy

(PHP 8 >= 8.4.0)

ReflectionClass::resetAsLazyProxy重設物件並將其標記為延遲載入

說明

public ReflectionClass::resetAsLazyProxy(物件 $object, 可呼叫 $factory, 整數 $options = 0):

此方法的行為與 ReflectionClass::resetAsLazyGhost() 相同,但它使用代理策略。

物件object本身會成為代理。類似於ReflectionClass::resetAsLazyGhost(),物件不會被另一個物件取代,即使在初始化之後,它的識別也不會改變。代理和實際的實例是不同的物件,具有不同的識別。

參數

object
一個非惰性物件,或一個已初始化的惰性物件。
factory
一個工廠回呼函式,其簽章和用途與ReflectionClass::newLazyProxy()中的相同。
options

options可以是以下旗標的組合

ReflectionClass::SKIP_INITIALIZATION_ON_SERIALIZE
預設情況下,序列化惰性物件會觸發其初始化。設定此旗標可防止初始化,允許惰性物件在不初始化的情況下被序列化。
ReflectionClass::SKIP_DESTRUCTOR
預設情況下,在將物件設為惰性之前,會呼叫物件的解構函式(如果有的話)。這提供了關於物件中任何預先存在狀態的安全性。此旗標會停用該行為,允許物件在不呼叫解構函式的情況下被重置為惰性。

返回值

不返回任何值。

錯誤/例外

如果物件是惰性的且未初始化,則會拋出ReflectionException

如果物件正在初始化,或者物件屬性正在使用foreach迭代,則會拋出Error

參見

新增註記

使用者貢獻的註記

此頁面沒有使用者貢獻的註記。
To Top