WeakMap::offsetUnset()

从 WeakMap 对象中移除指定的键值对

首字母:W

函数名称:WeakMap::offsetUnset()

适用版本:PHP 7.4.0 及以上版本

函数描述: WeakMap::offsetUnset() 方法用于从 WeakMap 对象中移除指定的键值对。

用法:

void WeakMap::offsetUnset( mixed $key )

参数:

  • $key: 要移除的键名。

示例:

// 创建一个 WeakMap 对象
$weakMap = new WeakMap();
// 创建两个对象作为键名
$obj1 = new stdClass();
$obj2 = new stdClass();
// 将对象作为键名和对应的值存入 WeakMap
$weakMap[$obj1] = "Value 1";
$weakMap[$obj2] = "Value 2";
// 输出 WeakMap 的初始状态
var_dump($weakMap);
/*
Output:
object(WeakMap)#1 (2) {
 [0]=>
 object(stdClass)#2 (0) {
 }
 [1]=>
 object(stdClass)#3 (0) {
 }
}
*/
// 移除键名为 $obj1 的键值对
$weakMap->offsetUnset($obj1);
// 输出移除后的 WeakMap 状态
var_dump($weakMap);
/*
Output:
object(WeakMap)#1 (1) {
 [1]=>
 object(stdClass)#3 (0) {
 }
}
*/

在上面的示例中,我们首先创建了一个 WeakMap 对象,并使用两个对象作为键名,将它们与对应的值存入 WeakMap。然后,使用 offsetUnset() 方法移除了键名为 $obj1 的键值对。最后,通过 var_dump() 函数输出了移除后的 WeakMap 对象状态。可以看到,键名为 $obj1 的键值对已被成功移除。

同首字母函数