ArrayAccess::offsetGet オフセットを取得する &reftitle.description; public mixedArrayAccess::offsetGet mixedoffset 指定したオフセットの値を返します。 このメソッドは、オフセットが empty かどうかを調べる際に実行されます。 &reftitle.parameters; offset 取得したいオフセット。 &reftitle.returnvalues; すべての型の値を返すことができます。 &reftitle.notes; このメソッドの実装で参照を返すことができます。 これにより、ArrayAccess オブジェクトのオーバーロードされた配列に対する間接的な変更ができます。 直接的な変更とは、$obj[6] = 7 のように配列のその次元の値を完全に置き換える変更のことです。 一方、間接的な変更とは、$obj[6][7] = 7 のようにその次元の一部分のみを変更したり $var =& $obj[6] のように他の変数に参照を代入したりする変更のことです。 ++ によるインクリメントや -- によるデクリメントもまた、ある意味では間接的な変更を要するものです。 直接的な変更の際には ArrayAccess::offsetSet がコールされますが、間接的な変更の際には ArrayAccess::offsetGet がコールされます。この場合は ArrayAccess::offsetGet の実装が参照を返せるようにしておく必要があります。 そうしなければ E_NOTICE メッセージが発生します。 &reftitle.seealso; ArrayAccess::offsetExists