为什么我们使用 ArrayAccess::offsetUnset(),而不是我们可以在 php 中使用 unset()?
Why we use ArrayAccess::offsetUnset(), instead we can use unset() in php?
为什么我们使用 ArrayAccess::offsetUnset() 我希望 unset() 足以使用。但是 php.net 表示:
Note: This method will not be called when type-casting to (unset)
谁能告诉我们如何使用它,它是否自动从实现 ArrayAccess 接口的 class 中取消设置被调用的偏移量元素?
引用 link http://php.net/manual/en/arrayaccess.offsetunset.php.
谢谢!!!
调用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
为什么我们使用 ArrayAccess::offsetUnset() 我希望 unset() 足以使用。但是 php.net 表示:
Note: This method will not be called when type-casting to (unset)
谁能告诉我们如何使用它,它是否自动从实现 ArrayAccess 接口的 class 中取消设置被调用的偏移量元素?
引用 link http://php.net/manual/en/arrayaccess.offsetunset.php.
谢谢!!!
调用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