Назад к блогу

Каковы преимущества PHP 8.1 и команды для обновления со старой версии на Nginx?

2022-12-303 мин чтения

Новые функции и улучшения PHP 8.1

PHP 8.1 — последняя версия популярного серверного языка сценариев, и она предлагает множество новых функций и улучшений, которые делают ее привлекательным выбором для разработчиков. В этой статье мы выделим некоторые ключевые преимущества обновления до PHP 8.1.

Прежде всего, PHP 8.1 представляет ряд улучшений производительности, которые делают его быстрее и эффективнее предыдущих версий. Это достигается за счет различных оптимизаций, таких как компилятор JIT (Just-In-Time), который преобразует код в машиночитаемые инструкции во время выполнения, и функция объединения типов, которая обеспечивает более эффективную проверку типов. Эти и другие улучшения приводят к значительному повышению производительности, что может быть особенно полезно для веб-сайтов и приложений с высокой посещаемостью.

Еще одним преимуществом PHP 8.1 являются улучшенные возможности обработки ошибок и отладки. Новая функция ошибок, вызывающих исключение (throwable errors), позволяет разработчикам более эффективно перехватывать и обрабатывать ошибки, а улучшенная система типов облегчает выявление и исправление проблем на ранних этапах процесса разработки. Кроме того, новая функция выражения «match» позволяет писать более лаконичный и выразительный код, который легче отлаживать и поддерживать.

PHP 8.1 также представляет ряд новых языковых функций, которые делают его более мощным и гибким. Упомянутая ранее функция объединения типов позволяет разработчикам указывать несколько возможных типов для переменной, что может быть особенно полезно при работе с внешними библиотеками или API. Новая функция «приоритет свойств конструктора» (constructor property promotion) позволяет разработчикам упростить свой код, устраняя необходимость писать избыточные геттеры и сеттеры, а новая функция «атрибуты» (attributes) позволяет разработчикам прикреплять метаданные к членам классов, функциям и другим языковым конструкциям.

Команды для обновления до PHP 8.1 на сервере Nginx на Ubuntu

Для целей данного руководства мы используем Ubuntu

sudo apt update

sudo apt install lsb-release ca-certificates apt-transport-https software-properties-common -y

sudo add-apt-repository ppa:ondrej/php

sudo apt install php8.1
sudo apt install php8.1-{imagick,bz2,curl,intl,mysql,readline,xml,fpm,mbstring,zip,bcmath,gd}

Обновите блоки сервера Nginx

Отредактируйте блок сервера для доменов, для которых вы хотите начать использовать версию PHP 8.1. Я использую nano в качестве текстового редактора, но вы можете использовать vim, vi или любой другой текстовый редактор по вашему выбору.

nano /etc/nginx/sites-available/yoursiteone.com

nano /etc/nginx/sites-available/yoursitetwo.com

Вы должны найти строку, похожую на эту: fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; и заменить номер текущей версии PHP, в моем случае 7.4, на 8.1.

Пример блока Nginx для обновления до PHP 8.1

После перезапуска сервера Nginx командой: service nginx restart, ваш(и) сайт(ы) начнет(ут) использовать PHP 8.1

Вы можете узнать больше о блоках сервера в Nginx по ссылкам:

Как настроить блоки сервера Nginx (виртуальные хосты) в Ubuntu 16.04

Примеры блоков сервера

Если вы используете DDEV для вашей локальной среды, вы можете использовать следующую команду для обновления до PHP 8.1:ddev config --php-version 8.1 Вы можете найти больше информации о DDEV по этой ссылке.

Таким образом, PHP 8.1 предлагает ряд преимуществ, которые делают его привлекательным выбором для разработчиков. Его улучшения производительности и расширенные возможности обработки ошибок делают его быстрее и надежнее, а новые языковые функции делают его более мощным и гибким. Если вы в настоящее время используете более старую версию PHP, настоятельно рекомендуется обновиться до PHP 8.1.

Категории: