7.2.33, ΠΊΠΎΠΉΡΠΎ Π΅Π»ΠΈΠΌΠΈΠ½ΠΈΡΠ° Π½Π°ΡΡΡΠΏΠ°Π½ΠΈΡΠ΅ Π³ΡΠ΅ΡΠΊΠΈ ΠΈ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ.
ΠΡΠ½ΠΎΠ²Π½Π°ΡΠ°
-
Π²ΠΊΠ»ΡΡΠ²Π°Π½Π΅ JIT ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΎΡ , ΡΠΈΠ΅ΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ ΡΠ΅ ΠΏΠΎΠ΄ΠΎΠ±ΡΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ°. -
ΠΠΎΠ΄ΠΊΡΠ΅ΠΏΠ° Π½Π°ΠΈΠΌΠ΅Π½ΡΠ²Π°Π½ΠΈ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΈ Π½Π° ΡΡΠ½ΠΊΡΠΈΡΡΠ°, ΠΊΠΎΠ΅ΡΠΎ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΠΏΡΠ΅Π΄Π°Π²Π°ΡΠ΅ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ Π½Π° ΡΡΠ½ΠΊΡΠΈΡΡΠ° Π²ΡΠ² Π²ΡΡΠ·ΠΊΠ° Ρ ΠΈΠΌΠ΅Π½Π°ΡΠ°, Ρ.Π΅. ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΡΠ΅Π΄Π°Π²Π°ΡΠ΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΈ Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»Π΅Π½ ΡΠ΅Π΄ ΠΈ Π΄Π° Π΄Π΅ΡΠΈΠ½ΠΈΡΠ°ΡΠ΅ Π½Π΅Π·Π°Π΄ΡΠ»ΠΆΠΈΡΠ΅Π»Π½ΠΈ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ βarray_fill(start_index: 0, num: 100, value: 50)β. - ΠΡΠΈ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° ΠΌΠ΅ΡΠΎΠ΄ΠΈ
ΠΏΠΎΠ·Π²ΠΎΠ»Π΅Π½ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° β?β, ΠΊΠΎΠΉΡΠΎ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΠΈΠ½ΠΈΡΠΈΠΈΡΠ°ΡΠ΅ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ ΡΠ°ΠΌΠΎ Π°ΠΊΠΎ ΠΌΠ΅ΡΠΎΠ΄ΡΡ Π΅ Π½Π°Π»ΠΈΡΠ΅, ΠΊΠΎΠ΅ΡΠΎ ΠΈΠ·Π±ΡΠ³Π²Π° Π½Π΅Π½ΡΠΆΠ½ΠΈΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π·Π° Π²ΡΡΡΠ°Π½Π΅ Π½Π° ΡΡΠΎΠΉΠ½ΠΎΡΡΡΠ° βnullβ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ "$dateAsString = $booking->getStartDate()?->asDateTimeString()"; - ΠΠΎΠ΄ΠΊΡΠ΅ΠΏΠ°
Π²ΠΈΠ΄ΠΎΠ²Π΅ ΡΡΡΠ·ΠΈ , Π΄Π΅ΡΠΈΠ½ΠΈΡΠ°ΡΠΈ ΠΊΠΎΠ»Π΅ΠΊΡΠΈΠΈ ΠΎΡ Π΄Π²Π° ΠΈΠ»ΠΈ ΠΏΠΎΠ²Π΅ΡΠ΅ ΡΠΈΠΏΠ° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ βΠΏΡΠ±Π»ΠΈΡΠ½Π° ΡΡΠ½ΠΊΡΠΈΡ foo(Foo|Bar $input): int|float;β). - ΠΠΎΠ΄ΠΊΡΠ΅ΠΏΠ°
Π°ΡΡΠΈΠ±ΡΡΠΈ (Π°Π½ΠΎΡΠ°ΡΠΈΠΈ), ΠΊΠΎΠΈΡΠΎ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°Ρ Π΄Π° ΠΎΠ±Π²ΡΡΠ·Π²Π°ΡΠ΅ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΠΈ (ΠΊΠ°ΡΠΎ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΡΠΈΠΏ) ΠΊΡΠΌ ΠΊΠ»Π°ΡΠΎΠ²Π΅, Π±Π΅Π· Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ° Π½Π° Docblock. - ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΈΠ·ΡΠ°Π·ΡΠ²Π°Π½Π΅
ΠΌΠ°Ρ , ΠΊΠΎΠΉΡΠΎ, Π·Π° ΡΠ°Π·Π»ΠΈΠΊΠ° ΠΎΡ switch, ΠΌΠΎΠΆΠ΅ Π΄Π° Π²ΡΡΡΠ° ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ, Π΄Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΡΡΠ»ΠΎΠ²ΠΈΡ Π·Π° ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠ°Π½Π΅, Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΡΡΡΠΈΠΊΡΠ½ΠΈ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Π½Π° ΡΠΈΠΏΠΎΠ²Π΅ ΠΈ Π½Π΅ ΠΈΠ·ΠΈΡΠΊΠ²Π° ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ βΠΏΡΠ΅ΠΊΡΡΠ²Π°Π½Π΅β.$ΡΠ΅Π·ΡΠ»ΡΠ°Ρ = ΠΌΠ°Ρ($Π²Ρ ΠΎΠ΄) {
0 => "Π·Π΄ΡΠ°Π²Π΅ΠΉ",
'1', '2', '3' => βΡΠ²ΡΡβ,
}; -
Π‘ΡΠΊΡΠ°ΡΠ΅Π½ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π΄Π΅ΡΠΈΠ½ΠΈΡΠΈΠΈ Π½Π° ΠΊΠ»Π°ΡΠΎΠ²Π΅, ΠΊΠΎΠ΅ΡΠΎ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠ°ΡΠ΅ Π΄Π΅ΡΠΈΠ½ΠΈΡΠΈΡΡΠ° Π½Π° ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΠΈ ΡΠ²ΠΎΠΉΡΡΠ²Π°. - ΠΠΎΠ² ΡΠΈΠΏ Π²ΡΡΡΠ°Π½Π΅ -
ΡΡΠ°ΡΠΈΡΠ΅Π½ . - ΠΠΎΠ² ΡΠΈΠΏ -
ΡΠΌΠ΅ΡΠ΅Π½ , ΠΊΠΎΠΉΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π΄Π°Π»ΠΈ Π΄Π°Π΄Π΅Π½Π° ΡΡΠ½ΠΊΡΠΈΡ ΠΏΡΠΈΠ΅ΠΌΠ° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ ΠΎΡ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΠΈΠΏΠΎΠ²Π΅. - ΠΈΠ·ΡΠ°Π·ΡΠ²Π°Π½Π΅
Ρ Π²ΡΡΠ»ΡΠΌ Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΠΈΠ·ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ. -
WeakMap Π·Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΎΠ±Π΅ΠΊΡΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ ΠΏΠΎΠΆΠ΅ΡΡΠ²Π°Π½ΠΈ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΡΡΠ±ΠΈΡΠ°Π½Π΅ Π½Π° Π±ΠΎΠΊΠ»ΡΠΊ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π·Π° ΡΡΡ ΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° Π½Π΅Π½ΡΠΆΠ½ΠΈ ΠΊΠ΅ΡΠΎΠ²Π΅). -
ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ ΠΈΠ·ΡΠ°Π·Π° β::classβ Π·Π° ΠΎΠ±Π΅ΠΊΡΠΈ (Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ Π½Π° ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ΡΠΎ Π½Π° get_class()). -
ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π΄Π΅ΡΠΈΠ½ΠΈΡΠΈΠΈ Π² Π±Π»ΠΎΠΊΠ° catch Π½Π° ΠΈΠ·ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ, ΠΊΠΎΠΈΡΠΎ Π½Π΅ ΡΠ° ΠΎΠ±Π²ΡΡΠ·Π°Π½ΠΈ Ρ ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ. -
ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ ΠΎΡΡΠ°Π²ΡΠΉΠΊΠΈ Π·Π°ΠΏΠ΅ΡΠ°Ρ ΡΠ»Π΅Π΄ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ Π΅Π»Π΅ΠΌΠ΅Π½Ρ Π² ΡΠΏΠΈΡΡΠΊΠ° Ρ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ. - ΠΠΎΠ² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ
ΠΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π½Π°Π½ΠΈΠΆΠ΅ Π·Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠ°Π½Π΅ Π½Π° Π²ΡΠΈΡΠΊΠΈ ΡΠΈΠΏΠΎΠ²Π΅ Π½ΠΈΠ·ΠΎΠ²Π΅ ΠΈΠ»ΠΈ Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Π½ΠΈ Π² Π½ΠΈΠ· (Π·Π° ΠΊΠΎΠΈΡΠΎ Π΅ Π½Π°Π»ΠΈΡΠ΅Π½ ΠΌΠ΅ΡΠΎΠ΄ΡΡ __toString(). - ΠΠΎΠ²Π° ΡΡΠ½ΠΊΡΠΈΡ
str_contains() , ΠΎΠΏΡΠΎΡΡΠ΅Π½ Π°Π½Π°Π»ΠΎΠ³ Π½Π° strpos Π·Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π½Π° ΠΏΠΎΡΠ²Π°ΡΠ° Π½Π° ΠΏΠΎΠ΄Π½ΠΈΠ·, ΠΊΠ°ΠΊΡΠΎ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈΡΠ΅ str_starts_with() ΠΈ str_ends_with() Π·Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΡΡΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΡ Π² Π½Π°ΡΠ°Π»ΠΎΡΠΎ ΠΈ ΠΊΡΠ°Ρ Π½Π° Π½ΠΈΠ·. - ΠΠΎΠ±Π°Π²Π΅Π½Π° ΡΡΠ½ΠΊΡΠΈΡ
fdiv() , ΠΊΠΎΠΉΡΠΎ ΠΈΠ·Π²ΡΡΡΠ²Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π·Π° Π΄Π΅Π»Π΅Π½ΠΈΠ΅, Π±Π΅Π· Π΄Π° ΠΈΠ·Π²Π΅ΠΆΠ΄Π° Π³ΡΠ΅ΡΠΊΠ° ΠΏΡΠΈ Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° Π½ΡΠ»Π°. -
ΠΡΠΎΠΌΠ΅Π½Π΅Π½ Π»ΠΎΠ³ΠΈΠΊΠ° Π·Π° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Π½Π° Π½ΠΈΠ·ΠΎΠ²Π΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΠ·ΡΠ°Π·ΡΡ βΠ΅Ρ ΠΎ βΡΡΠΌΠ°:β . $a + $b' ΠΏΡΠ΅Π΄ΠΈ ΡΠΎΠ²Π° ΡΠ΅ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΠ°ΡΠ΅ ΠΊΠ°ΡΠΎ 'Π΅Ρ ΠΎ ("ΡΡΠΌΠ°: ". $a) + $b', Π° Π² PHP 8 ΡΠ΅ ΡΠ΅ ΡΡΠ΅ΡΠΈΡΠ° ΠΊΠ°ΡΠΎ 'Π΅Ρ ΠΎ "ΡΡΠΌΠ°: ". ($a + $b)'. -
Π‘ΡΠ΅Π³Π½Π°ΡΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ½ΠΈ ΠΈ Π±ΠΈΡΠΎΠ²ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠ·ΡΠ°Π·ΠΈΡΠ΅ "[] % [42]" ΠΈ "$object + 4" ΡΠ΅ Π΄ΠΎΠ²Π΅Π΄Π°Ρ Π΄ΠΎ Π³ΡΠ΅ΡΠΊΠ°. -
ΠΠ½Π΅Π΄ΡΠ΅Π½ΠΎ ΡΡΠ°Π±ΠΈΠ»Π΅Π½ Π°Π»Π³ΠΎΡΠΈΡΡΠΌ Π·Π° ΡΠΎΡΡΠΈΡΠ°Π½Π΅, ΠΏΡΠΈ ΠΊΠΎΠΉΡΠΎ ΡΠ΅Π΄ΡΡ Π½Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½ΠΈ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ ΡΠ΅ Π·Π°ΠΏΠ°Π·Π²Π° Π² ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΠ΅ΡΠΈΠΈ.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru