ΠΠΊΠΈΠΏΡΡ Π½Π° PHP ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ ΠΎΠ±ΡΠ²ΠΈ ΠΏΡΡΠΊΠ°Π½Π΅ΡΠΎ Π½Π° Π½ΠΎΠ²Π° Π²Π΅ΡΡΠΈΡ Π½Π° Π΅Π·ΠΈΠΊΠ° β PHP 8.0.0.
ΠΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΈ Π½ΠΎΠ²ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ:
Union Types. ΠΠΌΠ΅ΡΡΠΎ PHPDoc Π°Π½ΠΎΡΠ°ΡΠΈΠΈ Π·Π° ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠ°Π½Π΅ Π½Π° ΡΠΈΠΏΠΎΠ²Π΅, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ Π½Π°ΡΠΈΠ²Π½ΠΈ ΠΎΠ±ΡΠ²Π»Π΅Π½ΠΈΡ Π½Π° ΡΠΈΠΏΠ° union, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π°Ρ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ.
ΠΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΈ. ΠΠΌΠ΅ΡΡΠΎ PHPDoc Π°Π½ΠΎΡΠ°ΡΠΈΠΈ, Π²Π΅ΡΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΡΡΡΡΠΊΡΡΡΠΈΡΠ°Π½ΠΈ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΠΈ Ρ ΡΠΎΠ΄Π΅Π½ PHP ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ.
ΠΠΏΠ΅ΡΠ°ΡΠΎΡ nullsafe. ΠΠΌΠ΅ΡΡΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° null, Π²Π΅ΡΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ Π²Π΅ΡΠΈΠΆΠ½ΠΈ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½ΠΈΡ Ρ Π½ΠΎΠ²ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ nullsafe. ΠΠΎΠ³Π°ΡΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ°ΡΠ° Π½Π° Π΅Π΄ΠΈΠ½ Π΅Π»Π΅ΠΌΠ΅Π½Ρ Π² Π²Π΅ΡΠΈΠ³Π°ΡΠ° ΡΠ΅ ΠΏΡΠΎΠ²Π°Π»ΠΈ, ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΡΠ»Π°ΡΠ° Π²Π΅ΡΠΈΠ³Π° ΡΠ΅ ΠΏΡΠ΅ΠΊΡΠ°ΡΡΠ²Π° ΠΈ ΡΠ΅ ΡΠ²Π΅ΠΆΠ΄Π° Π΄ΠΎ null.
Just-in-time ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ. Π PHP 8 ΡΠ΅ ΠΏΠΎΡΠ²ΠΈΡ Π° Π΄Π²Π° JIT ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ°. Tracing JIT, Π½Π°ΠΉ-ΠΏΠ΅ΡΡΠΏΠ΅ΠΊΡΠΈΠ²Π½ΠΈΡΡ ΠΎΡ Π΄Π²Π°ΡΠ°, ΠΏΠΎΠΊΠ°Π·Π²Π° ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ: ΡΡΠΈ ΠΏΡΡΠΈ Π½Π° ΡΠΈΠ½ΡΠ΅ΡΠΈΡΠ½ΠΈ ΡΠ΅ΡΡΠΎΠ²Π΅ ΠΈ 1,5-2 ΠΏΡΡΠΈ Π½Π° Π½ΡΠΊΠΎΠΈ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Π’ΠΈΠΏΠΈΡΠ½Π°ΡΠ° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡΠ° Π΅ Π½Π° Π΅Π΄Π½ΠΎ Π½ΠΈΠ²ΠΎ Ρ PHP 7.4.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: linux.org.ru
