La clase WeakReference
Introducción#
Las referencias débiles permiten al programador mantener una referencia a un objeto sin impedir su destrucción. Son útiles para implementar estructuras como cachés. Si el objeto original ha sido destruido, null será devuelto al llamar al método WeakReference::get. El objeto original será destruido cuando el contador de referencias llegue a cero; la creación de referencias débiles no incrementa el contador de referencias del objeto referenciado.
Las WeakReferences no pueden ser serializadas.
Sinopsis de la clase#
final
WeakReference
Métodos
Ejemplo con WeakReference#
Uso Simple de WeakReference
<?php
$obj = new stdClass();
$weakref = WeakReference::create($obj);
var_dump($weakref->get());
unset($obj);
var_dump($weakref->get());
?>
Resultado del ejemplo anterior es similar a:
object(stdClass)#1 (0) {
}
NULL
Historial de cambios#
| Versión | Descripción |
|---|---|
| 8.4.0 | La salida de WeakReference::__debugInfo incluye ahora el objeto referenciado, o null si la referencia ya no es válida. |