91亚洲精品福利在线播放,欧美日韩国产在线人成app,天天躁日日躁疯人影院,sao虎视频最新网站入口,精品久久久久久中文字幕女

WeakMap 類(lèi)

(PHP 8)

簡(jiǎn)介

WeakMap 是將對象作為 key 來(lái)訪(fǎng)問(wèn)的 map(或者說(shuō)字典)。然而,與其它類(lèi)似 SplObjectStorage 不同,WeakMap 中的對象 key 不影響對象的引用計數。也就是說(shuō),如果在任何時(shí)候對其唯一的剩余引用是 WeakMap key,那么該對象將會(huì )被垃圾收集并從 WeakMap 移除。它的主要用法是從對象中編譯數據派生緩存,這種場(chǎng)景下不需要存活得比對象更久。

WeakMap 實(shí)現了 ArrayAccess、 Iterator、Countable, 因此大多數情況下,它能和關(guān)聯(lián)數組一樣使用。

類(lèi)摘要

final class WeakMap implements ArrayAccess, Countable, IteratorAggregate {
/* 方法 */
public __construct()
public count(): int
public offsetExists(object $object): bool
public offsetGet(object $object): mixed
public offsetSet(object $object, mixed $value): void
public offsetUnset(object $object): void
}

范例

示例 #1 Weakmap 用法示例

<?php
$wm 
= new WeakMap();

$o = new StdClass;

class 
{
    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));

以上例程會(huì )輸出:

int(1)
Unsetting...
Dead!
Done
int(0)

目錄

91亚洲精品福利在线播放,欧美日韩国产在线人成app,天天躁日日躁疯人影院,sao虎视频最新网站入口,精品久久久久久中文字幕女