WeakMap (class)

The WeakMap class

Introduction

(PECL weakref >= 0.2.0)

Class synopsis

WeakMap implements Countable , ArrayAccess , Iterator {

/* Methods */

public __construct ( void )

public int count ( void )

public mixed current ( void )

public object key ( void )

public void next ( void )

public bool offsetExists ( object $object )

public mixed offsetGet ( object $object )

public void offsetSet ( object $object , mixed $value )

public void offsetUnset ( object $object )

public void rewind ( void )

public bool valid ( void )

}

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::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

← Weakref::valid

WeakMap::__construct →

© 1997–2017 The PHP Documentation Group

Licensed under the Creative Commons Attribution License v3.0 or later.

https://secure.php.net/manual/en/class.weakmap.php