值得注意的是,PHP 开发人员 *确实* 修复了 Sam 在 2013 年提到的问题(根据他在这里的评论线程:https://bugs.php.net/bug.php?id=34783#1366088374),至少从 PHP 5.3.8 开始。
因此,您 *可以*(并且在大多数情况下应该)使用引用语法重载 offsetGet 以获得预期功能
<?php
class myArrayType extends ArrayAccess {
public function &offsetGet($index) {
// ...
}
}
?>