返回博客

PHP 8.1 的优势以及在 Nginx 上从旧版本升级的命令是什么?

2022-12-303 分钟阅读

PHP 8.1 新功能和改进

PHP 8.1 是流行的服务器端脚本语言的最新版本,它带来了许多新功能和改进,使其成为开发人员的有力选择。在本文中,我们将重点介绍升级到 PHP 8.1 的一些主要优势。

首先,PHP 8.1 引入了许多性能增强功能,使其比以前的版本更快、更高效。这是通过各种优化实现的,例如 JIT(即时)编译器,它在运行时将代码转换为机器可读指令,以及联合类型功能,它允许更有效的类型检查。这些以及其他改进带来了显著的性能提升,这对于高流量网站和应用程序尤其有利。

PHP 8.1 的另一个优点是其改进的错误处理和调试功能。新的可抛出错误功能允许开发人员更有效地捕获和处理错误,而改进的类型系统使得在开发过程的早期捕获和修复问题更加容易。此外,新的“match”表达式功能允许编写更简洁、更具表现力的代码,这可以使调试和维护更加容易。

PHP 8.1 还引入了许多新的语言功能,使其功能更强大、更灵活。前面提到的联合类型功能允许开发人员为变量指定多个可能的类型,这在使用外部库或 API 时尤其有用。新的“构造函数属性提升”功能允许开发人员通过消除编写冗余的 getter 和 setter 的需要来简化代码,而新的“属性”功能允许开发人员将元数据附加到类成员、函数和其他语言构造。

在 Ubuntu 的 Nginx 服务器上升级到 PHP 8.1 的命令

本指南的目的是,我们正在使用 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。

更新到 PHP 8.1 的 Nginx 块示例

使用以下命令重启 Nginx 服务器后:service nginx restart,您的站点将开始使用 PHP 8.1。

您可以在以下位置了解有关 Nginx 服务器块的更多信息:

如何设置 Nginx 服务器块

服务器块示例

如果您在本地环境中使用 DDEV,可以使用以下命令升级到 PHP 8.1 : ddev config --php-version 8.1 您可以在此 链接 中找到有关 DDEV 的更多信息。

总而言之,PHP 8.1 提供了许多使其成为开发人员的吸引人选择的优势。其性能增强和改进的错误处理功能使其更快、更可靠,而其新的语言功能使其功能更强大、更灵活。如果您目前使用的是旧版本的 PHP,强烈建议升级到 PHP 8.1。