Какво е новото в PHP 8: JIT компилатор, новите функции
Новата версия на PHP 8 вече е факт!
Новата версия на PHP идва с много нови функции, промени и подобрения. Стабилната версия на PHP 8 е вече факт.
Нека разберем какви са новостите в PHP 8.
PHP JIT (Just-in-Time компилатор)
PHP е интерпретиран език. Това означава, че не е компилиран като Java (или C например). PHP се превежда в машинен код по време на изпълнение. Най-съществената промяна, която идва с новата версия на PHP 8, е компилаторът Just-in-time (JIT). Нека разберем повече за него!
JIT е технология, която ще “преведе” в машинен код част от кода ни по време на изпълнение, като тази версия ще бъде използвана на по-късен етап наготово. Можем да я определим като “кеширана версия” на интерпретирания код, генериран по време на изпълнение.
Вероятно се питате с какво ще допринесе това за вашия PHP проект? Очаква се новият компилатор значително да подобри производителността и скоростта. Във видеото по-долу можете да видите как изчисленията са по-бързи, ако използваме PHP 8 (JIT) в сравнение с PHP 7. Видеото е от Зеев Сураски, съавтор на предложението за JIT в PHP 8.
До тук добре, но как работи новата версия?
Без да навлизаме в много специфики, има инструмент, наречен „монитор“, който ще наблюдава кода, докато се изпълнява. Когато “мониторът” забележи код, който се изпълнява повторно, той ще бъде маркиран като „топъл“ и „горещ“ - в зависимост от честотата, която се изпълнява. Тези „горещи“ части на кода се компилират като оптимизиран машинен код и се използват по-късно, вместо реалния код. Да, вероятно си мислите, че това изглежда като технологията зад OPCache. Да, предположението ви е правилно, но има разлика между OPCache и JIT компилатора.
Темата е много комплексна и не можем да я обхванем в рамките на тази статия. Достатъчно е да знаете, че JIT компилаторът може значително да подобри скоростта на вашия PHP проект.
Нека ви представим новите функционалности в PHP 8
Ако изместим фокуса си от новия PHP JIT компилатор, ще видим куп промени и подобрения, които идват с PHP 8. Смята се, че тези промени ще направят PHP по-надежден и ефективен.
Промените и функциите, въведени в новата основна версия на PHP 8, са толкова много, че ако ги изредим списъка ще стане прекалено дълъг за публикация в блог, особено, ако се опитаме да ги опишем поотделно.
Ще се спрем на основните промени в новата версия:
-
Constructor Property Promotion
-
Validation for Abstract Trait Methods
-
Union Types
-
Weak Maps
-
Throw Expression
-
Arrays Starting With a Negative Index
И много други. Можете да проверите всички промени и тяхното описание тук.
Също така, с идването на PHP 8 има създадени няколко функции:
-
str_contains()
-
str_starts_with()
-
str_ends_with()
-
get_debug_type()
Кога PHP 8 ще бъде активен за всички акаунти използващи споделеният хостинг на VPSBG?
За нас е много важно да предлагаме най-добрите и най-нови технологии на пазара. Въпреки това PHP 8 все още е в бета версия и не се препоръчва да се използва в производствена среда. Съвсем скоро новата версия ще бъде достъпна за използване във вашата VPSBG споделена хостинг услуга.
Обобщение
В тази статия се опитахме да обхванем по-значимите промени, които са обявени с новата версия. Вероятно най-очакваната функция е новият JIT компилатор, който ще донесе значителен тласък на вашето PHP приложение.
Изключително много се вълнуваме за новата версия PHP 8 и за нещата, които тя ще донесе на света. Очакваме с нетърпение да я изпробваме, а вие?