The WeakReference class

(PHP 7 >= 7.4.0, PHP 8)

Introduction

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.

WeakReferences cannot be serialized.

Class synopsis

finalclassWeakReference {
public__construct()
publicstaticcreate(object$object): WeakReference
publicget(): ?object
}

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

To Top