• English
  • Русский
  • Українська
Need a Ruby on Rails developer? Contact Us.

Розробники випустили восьму версію мови програмування PHP

Розробники випустили восьму версію мови програмування PHP

Розробники випустили восьму версію мови програмування PHP

Група ентузіастів на чолі з данським програмістом Лердорформ Расмусом випустили восьму версію скриптової мови програмування PHP. Реліз відбувся 26 листопада 2020 року, майже на рік раніше, ніж планувалося. У порівнянні з попередньою версією PHP 8 отримав кілька серйозних поліпшень, включаючи застосування JIT-компілятора і істотне доопрацювання «синтаксичного цукру», що дозволяє зменшити обсяг шаблонного коду.

Розробка мови програмування PHP ведеться з 1995 року. Основною сферою його застосування є розробка динамічних веб-сайтів з виконанням коду на серверній стороні. При цьому доступна і компіляція програм, написаних на PHP, для виконання на UNIX-операційних системах і в середовищі Windows. Істотний вплив на синтаксис PHP зробили кілька мов програмування, включаючи C++ і Java.

Найбільш істотною зміною у версії PHP 8 стало використання JIT-компілятора. Він дозволяє переводити код програми в машинний код в режимі реального часу безпосередньо під час виконання програми. Таким чином для деяких випадків вдається підвищити швидкість виконання додатків. У випадку з PHP 8 найбільший приріст швидкості за допомогою JIT-компілятора досягається при виконанні математичних операцій.

Ще одним практичним поліпшенням в PHP 8 стало додавання виразу match. В цілому воно працює аналогічно традиційному switch, однак, на відміну від останнього, використовує суворе порівняння значень. При цьому результат роботи match може бути збережений в змінну і використаний надалі або повернутий, наприклад, за допомогою функції echo. На відміну від switch, вираз match працює з однорядковими виразами, які не потребують конструкції break.

У PHP 8 також з’явилися іменовані аргументи для використання в бібліотеках або асоціативних масивах. Це нововведення, на відміну від PHP 7, використовує самодокументовані аргументи, що дозволяє використовувати їх в будь-якому порядку, пропускаючи необов’язкові параметри. Це позитивно позначається на читаності коду і його обсязі, особливо якщо мова йде про використання бібліотек, що працюють з булевими параметрами.

Ще в PHP 8 з’явилася можливість використовувати структурні метадані з нативним синтаксисом PHP замість анотацій PHPDoc. Завдяки цьому, наприклад, при написанні метаданих можна буде використовувати підказки середовища розробки. Крім того, в PHP 8 стали можливими одночасне оголошення та ініціалізація властивостей в конструкторі класу. В деякі випадках це дозволяє скоротити обсяг коду втричі.

Нарешті, ще однією істотною зміною в PHP 8 стало використання нового оператора Nullsafe, який записується занком ? після оброблюваного елемента. Це позбавляє, наприклад, від необхідності прописувати перевірку на null для кожної змінної, використовуючи замість цього послідовність викликів з оператором Nullsafe. У цьому випадку, якщо хоча б один елемент повертає значення null, вся послідовність поверне null.

З більш повним списком нововведень в PHP 8 і документацією по ним можна ознайомиться в повідомленні про реліз.

У середині 2018 року британський Розробник Ділан Бітті представив нову динамічну мову програмування Rockstar. Його синтаксис натхненний відомими рок-піснями 80-х років.