Каковы преимущества PHP 8.1 и команды для обновления со старой версии на Nginx?
Новые функции и улучшения 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 командой: 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.