ArrayAccess::offsetGet

(PHP 5, PHP 7, PHP 8)

ArrayAccess::offsetGet β€” Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ смСщСниС (ΠΊΠ»ΡŽΡ‡)

ОписаниС

public function ArrayAccess::offsetGet(mixed $offset): mixed

Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ смСщСниС (ΠΊΠ»ΡŽΡ‡).

Π”Π°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ выполняСтся, ΠΊΠΎΠ³Π΄Π° провСряСтся смСщСниС (ΠΊΠ»ΡŽΡ‡) Π½Π° пустоту с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ empty().

Бписок ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²

offset

Π‘ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ (ΠΊΠ»ΡŽΡ‡) для Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π°.

Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Π΅ значСния

ΠœΠΎΠΆΠ΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ любого Ρ‚ΠΈΠΏΠ°.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΡ

Π—Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅:

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½Π° рСализация Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° с Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎ ссылкС. Π­Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌ ΠΊΠΎΡΠ²Π΅Π½Π½ΡƒΡŽ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ для Π²Π΅Π»ΠΈΡ‡ΠΈΠ½ массива ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ArrayAccess.

Явная модификация - это такая модификация, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ замСняСтся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρ‹ массива, ΠΊΠ°ΠΊ Π² случаС $obj[6] = 7. Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, ΠΏΡ€ΠΈ косвСнной ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ замСняСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Π°ΡΡ‚ΡŒ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρ‹, ΠΈΠ»ΠΈ происходит ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° присвоСния Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρ‹ ΠΏΠΎ ссылкС Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, ΠΊΠ°ΠΊ Π² случаС $obj[6][7] = 7 ΠΈΠ»ΠΈ $var =& $obj[6]. Π£Π²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ с использованиСм ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° ++ ΠΈ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΠ΅ с использованиСм ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° -- Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ способа, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΊΠΎΡΠ²Π΅Π½Π½ΡƒΡŽ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ.

Π’ Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ, явная модификация запускаСт Π²Ρ‹Π·ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ArrayAccess::offsetSet(), косвСнная модификация запускаСт Π²Ρ‹Π·ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ArrayAccess::offsetGet(). Π’ Ρ‚Π°ΠΊΠΎΠΌ случаС, рСализация ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ArrayAccess::offsetGet() Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π² состоянии Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΏΠΎ ссылкС, Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π·Π²Π°Π½ΠΎ сообщСниС ΠΎΠ± ошибкС уровня E_NOTICE.

Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅

  • ArrayAccess::offsetExists() - ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚, сущСствуСт Π»ΠΈ Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ смСщСниС (ΠΊΠ»ΡŽΡ‡)
οΌ‹Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Π΅Ρ‰Ρ‘ Π½Π΅ добавляли примСчания для страницы