Die Klasse WeakReference

(PHP 7 >= 7.4.0, PHP 8)

EinfĂŒhrung

Schwache Referenzen erlauben es dem Programmierer, eine Referenz auf ein Objekt zu behalten, die nicht verhindert, dass das Objekt zerstört wird. Sie sind nĂŒtzlich fĂŒr die Implementierung von Cache-Ă€hnlichen Strukturen. Wenn das ursprĂŒngliche Objekt zerstört wurde, wird beim Aufruf der Methode WeakReference::get() null zurĂŒckgegeben. Wenn der ReferenzzĂ€hler fĂŒr das ursprĂŒngliche Objekt auf Null fĂ€llt, wird es zerstört; das Erstellen von schwachen Referenzen erhöht den refcount des referenzierten Objekts nicht.

WeakReferences können nicht serialisiert werden.

Klassenbeschreibung

final class WeakReference {
/* Methoden */
public function __construct()
public static function create(object $object): WeakReference
public function get(): ?object
}

WeakReference-Beispiele

Beispiel #1 Grundlegende Verwendung von WeakReference

<?php

$obj
= new stdClass();
$weakref = WeakReference::create($obj);

var_dump($weakref->get());

unset(
$obj);

var_dump($weakref->get());

?>

Das oben gezeigte Beispiel erzeugt eine Àhnliche Ausgabe wie:

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

Changelog

Version Beschreibung
8.4.0 Die Ausgabe von WeakReference::__debugInfo() enthĂ€lt nun das referenzierte Objekt oder NULL, wenn die Referenz nicht mehr gĂŒltig ist.

Inhaltsverzeichnis

add a note

User Contributed Notes

There are no user contributed notes for this page.