(PHP 7 >= 7.4.0)
Referências fracas permitem que o programador mantenha uma referência a um objeto que não impede que o objeto seja destruído. Eles são úteis para implementar estruturas como cache.
Nota:
A classe WeakReference não deve ser confundida com a classe WeakRef da extensão Weakref.
WeakReferences não podem ser serializadas.
Exemplo #1 Uso básico de referência fraca
<?php
$obj = new stdClass;
$weakref = WeakReference::create($obj);
var_dump($weakref->get());
unset($obj);
var_dump($weakref->get());
?>
O exemplo acima irá imprimir algo similar à:
object(stdClass)#1 (0) { } NULL