The WeakMap class
Introduction
(PECL weakref >= 0.2.0)
Class synopsis
/* Methods */
public __construct ( )
public count ( ) : int
public current ( ) : mixed
public key ( ) : object
public next ( ) : void
public offsetExists ( object $object ) : bool
public offsetGet ( object $object ) : mixed
public offsetSet ( object $object , mixed $value ) : void
public offsetUnset ( object $object ) : void
public rewind ( ) : void
public valid ( ) : bool}
Examples
Example #1 Weakmap usage example
<?php $wm = new WeakMap(); $o = new StdClass; class A { public function __destruct() { echo "Dead!\n"; } } $wm[$o] = new A; var_dump(count($wm)); echo "Unsetting..\n"; unset($o); echo "Done\n"; var_dump(count($wm));
The above example will output:
int(1) Unsetting.. Dead! Done int(0)
Table of Contents
- WeakMap::__construct — Constructs a new map
- WeakMap::count — Counts the number of live entries in the map
- WeakMap::current — Returns the current value under iteration
- WeakMap::key — Returns the current key under iteration
- WeakMap::next — Advances to the next map element
- WeakMap::offsetExists — Checks whether a certain object is in the map
- WeakMap::offsetGet — Returns the value pointed to by a certain object
- WeakMap::offsetSet — Updates the map with a new key-value pair
- WeakMap::offsetUnset — Removes an entry from the map
- WeakMap::rewind — Rewinds the iterator to the beginning of the map
- WeakMap::valid — Returns whether the iterator is still on a valid map element
© 1997–2020 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://www.php.net/manual/en/class.weakmap.php