1

为什么我们使用ArrayAccess::offsetUnset()而不是我希望unset()足以使用。但是 php.net 声明:

注意:类型转换为(未设置)时不会调用此方法

谁能告诉我们如何使用它,它是否会自动从实现ArrayAccess接口的类中取消设置被调用的偏移元素?

参考链接http://php.net/manual/en/arrayaccess.offsetunset.php

谢谢 !!!

4

1 回答 1

5

offsetUnset()当在函数中使用数组访问表达式时,调用该方法,unset()如下所示:

unset($yourSpecialObject['abc']);

但是,在以下语句中没有调用它:

$yourSpecialObject['abc'] = null;         // offsetSet() is called instead
$yourSpecialObject['abc'] = (unset)'abc'; // offsetSet() is called instead
(unset)$yourSpecialObject['abc'];         // offsetGet() is called instead
于 2017-10-08T07:34:49.657 回答