WeakReference クラス

(PHP 7 >= 7.4.0, PHP 8)

はじめに

弱い参照により、オブジェクトが破棄されるのを妨げないオブジェクトへの参照を保持することが可能です。 この機能は、キャッシュのようなデータ構造を実装するのに役立ちます。

WeakReference クラスはシリアライズできません。

クラス概要

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

WeakReference の例

例1 基本的な WeakReference クラスの使い方

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

上の例の出力は、 たとえば以下のようになります。

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

目次

To Top