(PHP 5, PHP 7, PHP 8)
ArrayAccess::offsetGet — Возвращает заданное смещение (ключ)
Возвращает заданное смещение (ключ).
Данный метод выполняется, когда проверяется смещение (ключ) на пустоту с помощью функции empty().
offset
Смещение (ключ) для возврата.
Может возвращать значение любого типа.
Замечание:
Возможна реализация данного метода с возвращением по ссылке. Это делает возможным косвенную модификацию для величин массива перегруженного объекта ArrayAccess.
Явная модификация - это такая модификация, при которой полностью заменяется значение величины массива, как в случае
$obj[6] = 7
. С другой стороны, при косвенной модификации заменяется только часть величины, или происходит попытка присвоения величины по ссылке другой переменной, как в случае$obj[6][7] = 7
или$var =& $obj[6]
. Увеличение с использованием оператора++
и уменьшение с использованием оператора--
также реализуются с помощью способа, который требует косвенную модификацию.В то время как, явная модификация запускает вызов метода ArrayAccess::offsetSet(), косвенная модификация запускает вызов метода ArrayAccess::offsetGet(). В таком случае, реализация метода ArrayAccess::offsetGet() должна быть в состоянии возвращать результат по ссылке, в противном случае будет вызвано сообщение об ошибке уровня
E_NOTICE
.