Класс WeakMap
(PECL weakref >= 0.2.0)
Введение
Обзор классов
/* Методы */
public __construct
(
)
}Примеры
Пример #1 Пример использования Weakmap
<?php
$wm = new WeakMap();
$o = new StdClass;
class A {
public function __destruct() {
echo "Уничтожение объекта!\n";
}
}
$wm[$o] = new A;
var_dump(count($wm));
echo "Удаление...\n";
unset($o);
echo "Готово\n";
var_dump(count($wm));
Результат выполнения данного примера:
int(1) Удаление... Уничтожение объекта! Готово int(0)
Содержание
- WeakMap::__construct — Создает новую карту ссылок
- WeakMap::count — Количество актуальных ссылок в карте
- WeakMap::current — Возвращает текущее значение относительно внутреннего итератора
- WeakMap::key — Возвращает текущий ключ относительно внутреннего итератора
- WeakMap::next — Следующий элемент в карте ссылок
- WeakMap::offsetExists — Проверяет, присутствует ли переданный объект в карте
- WeakMap::offsetGet — Возвращает значение, на которое указывает переданный объект
- WeakMap::offsetSet — Добавляет новую пару ключ-значение в карту
- WeakMap::offsetUnset — Удалить запись из карты
- WeakMap::rewind — Возвращает указатель итератора на начало карты
- WeakMap::valid — Проверяет, укзывает ли текущий итератор на действительное значение