(PHP 7 >= 7.4.0, PHP 8)
弱參考允許程式設計師保留對物件的參考,但不阻止物件被銷毀。它們對於實現類似快取的結構很有用。如果原始物件已被銷毀,呼叫 WeakReference::get() 方法時將返回 null
。當原始物件的參考計數 降至零時,它將被銷毀;建立弱參考不會增加被參考物件的參考計數
。
弱引用 (WeakReference) 無法被序列化。
範例 #1 弱引用 (WeakReference) 基本用法
<?php
$obj = new stdClass();
$weakref = WeakReference::create($obj);
var_dump($weakref->get());
unset($obj);
var_dump($weakref->get());
?>
上述範例將輸出類似以下的內容
object(stdClass)#1 (0) { } NULL