W3cubDocs

/PHP

The WeakReference class

Introduction

(PHP 7 >= 7.4.0)

Weak references allow the programmer to retain a reference to an object which does not prevent the object from being destroyed. They are useful for implementing cache like structures.

Note:

The class WeakReference is not to be confused with the class WeakRef of the Weakref extension.

WeakReferences cannot be serialized.

Class synopsis

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

WeakReference Examples

Example #1 Basic WeakReference Usage

<?php
$obj = new stdClass;
$weakref = WeakReference::create($obj);
var_dump($weakref->get());
unset($obj);
var_dump($weakref->get());
?>

The above example will output something similar to:

object(stdClass)#1 (0) {
}
NULL

Table of Contents

© 1997–2020 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://www.php.net/manual/en/class.weakreference.php