A classe WeakReference

(PHP 7 >= 7.4.0)

Introdução

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.

Sinopse da classe

WeakReference {
/* Métodos */
public __construct ( )
public static create ( object $referent ) : WeakReference
public get ( ) : object|null
}

Exemplos de referência fraca

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

Índice