PHP 是 Web 开发的基石,它不断发展,每个版本都提供新功能和改进。PHP 8.2 的发布也不例外,它带来的增强功能有望提高性能、提高代码可读性并引入更强大的类型系统。对于开发人员和系统管理员来说,了解这些更新以及如何利用它们对于维护和开发现代 Web 应用程序至关重要。
PHP 8.2 引入了多项显著的增强功能,旨在简化开发工作流程并增强应用程序的安全性和功能:
- 只读类:使不可变类更加直接和简洁。
- 析取范式 (DNF) 类型:在类型声明中提供更多的灵活性。
- null、false 和 true 的独立类型:使用专用类型改进类型检查。
- 新的“随机”扩展:提供一种更安全、面向对象的方法来生成随机数。
- 特征中的常量: 允许特征声明常量可增强其实用性。
- 已弃用的动态属性:通过弃用未经批准的动态属性来鼓励更好的编码实践。
- 新的类、接口和函数:引入新的功能和属性以进一步提升 PHP 的功能。
这些增强功能彰显了 PHP 致力于推动 Web 技术发展的承诺,并强调了紧跟最新开发实践的重要性。让我们深入了解如何安装此最新版本并充分发挥您的 Web 开发项目的潜力。
在 Ubuntu 上安装 PHP 8.2 的先决条件
要在 Ubuntu 上成功安装 PHP 8.2,请确保满足以下要求:
系统要求和支持的 Ubuntu 版本
成分 | 最低要求 |
---|---|
处理器 | 2 GHz 或更快的双核处理器 |
内存 | 4 GB 或更多 |
磁盘空间 | 25 GB 可用空间 |
网络 | 高速网络连接 |
支持的版本 | Ubuntu 24.04(Noble), Ubuntu 22.04(Jammy), Ubuntu 20.04(焦点) |
其他要求
要求 | 描述 |
---|---|
网络连接 | 下载 PHP 8.2 并应用更新所必需。 |
终端约定 | 所有终端命令都应以普通用户身份执行 sudo 特权。 |
CLI 命令 | 利用命令行界面 (CLI) 进行安装和设置。 |
网络服务器 | 确保安装了兼容的 Web 服务器(例如 Apache、Nginx)以运行 PHP 脚本。 |
在安装 PHP 之前更新 Ubuntu
首先更新您的 Ubuntu 系统至关重要。此步骤可增强安全性并确保顺利安装新软件。使用以下命令刷新您的软件包列表并升级过时的软件包:
sudo apt update
sudo apt upgrade
在 Ubuntu 上安装 PHP PPA 的初始软件包
在添加 PHP PPA 之前,请安装安全包处理所需的包。其中包括证书认证和软件属性管理工具。
运行以下命令:
sudo apt install ca-certificates apt-transport-https software-properties-common lsb-release -y
添加 PHP 8.2 PPA
现在,整合 翁德雷·苏里 (Ondrej Surý) 将 PHP PPA 导入您的系统。此存储库提供最新的 PHP 版本,超越了 Ubuntu 的默认版本。
使用以下命令导入存储库:
sudo add-apt-repository ppa:ondrej/php -y
添加 PPA 后,更新包缓存以识别新源:
sudo apt update
最后,使用以下命令升级所有需要更新的软件包:
sudo apt upgrade
继续安装 PHP 8.2
选项 1:将 PHP 安装为 Apache 模块
对于 Apache HTTP 服务器环境,PHP 通常以模块形式安装。为了维护精简的服务器,只需安装所需的特定 PHP 版本。
使用以下命令在 Ubuntu 上将 PHP 8.2 安装为 Apache 模块:
sudo apt install php8.2 libapache2-mod-php8.2
安装后,重新启动 Apache 以加载新的 PHP 模块:
sudo systemctl restart apache2
选项 2:使用 PHP-FPM 安装 Apache
PHP-FPM 为繁忙的网站提供增强的性能。
要在 Ubuntu 上使用 PHP-FPM for Apache 安装 PHP 8.2:
sudo apt install php8.2-fpm libapache2-mod-fcgid
使用以下方式启用 PHP-FPM:
sudo a2enmod proxy_fcgi setenvif
sudo a2enconf php8.2-fpm
重新启动 Apache 以应用更改:
sudo systemctl restart apache2
选项 3:安装 Nginx 的 PHP 8.2 支持
Nginx 需要 PHP-FPM 来处理 PHP 文件。使用以下命令在 Ubuntu 上安装 PHP 8.2 并为 Nginx 安装 PHP-FPM:
sudo apt install php8.2 php8.2-fpm php8.2-cli
如果 PHP-FPM 8.2 服务未运行,请手动启动它:
sudo systemctl start php8.2-fpm
为 PHP-FPM 8.2 配置 Nginx 服务器块
修改 Nginx 服务器块以处理 PHP 文件。将其添加到相关的服务器块:
location ~ .php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
}
您可以使用以下命令验证修改后的 Nginx 配置的语法:
sudo nginx -t
此命令验证配置文件的语法并突出显示发现的任何错误。成功的输出将如下所示:
nginx:配置文件/etc/nginx/nginx.conf语法正常 nginx:配置文件/etc/nginx/nginx.conf测试成功
确认语法正确后,重新启动 Nginx 服务以应用更改:
sudo systemctl restart nginx
最后要注意的是,请务必检查系统上安装的 PHP 版本。使用以下命令执行此操作:
php --version
此命令显示您系统当前的 PHP 版本,让您确认安装或升级是否成功。
使用 PHP 8.2 扩展
安装 PHP 8.2 扩展
要在 Ubuntu 上自定义 PHP 8.2,请选择符合项目要求的扩展。此方法可提高性能和安全性。
使用以下命令安装必要的扩展:
sudo apt install php8.2-{cli,fpm,curl,mysqlnd,gd,opcache,zip,intl,common,bcmath,imagick,xmlrpc,readline,memcached,redis,mbstring,apcu,xml,dom,memcache}
了解 PHP 8.2 扩展
- php-cli:用于运行 PHP 脚本的命令行界面。
- php-fpm:FastCGI 进程管理器,用于高效处理请求。
- php-curl:实现与不同类型的服务器的通信。
- php-mysqlnd:用于数据库连接的 MySQL 原生驱动程序。
- php-gd:用于图像处理的图形库。
- php-opcache:通过缓存预编译的脚本字节码来提高 PHP 性能。
- php-zip:管理zip文件操作。
- php 国际:对全球字符集的国际化支持。
- php 常用:跨多个 PHP 模块的常见功能。
- php-bcmath:用于精确浮点运算。
- php-imagick:使用 ImageMagick 的图像处理功能。
- php-xmlrpc:XML-RPC 服务器和客户端功能。
- php-readline:从终端交互式输入读取。
- php-memcached 和 php-redis:缓存解决方案以提高性能。
- php-mbstring:处理多字节字符编码。
- php-apcu:用户缓存以增强 PHP 应用程序性能。
- php-xml 和 php-dom:XML 解析和操作。
要查找其他模块(以上仅为示例),请使用以下搜索命令:
sudo apt search php8.2-
监控已安装的 PHP 8.2 模块
使用 php -m
查看已加载的PHP模块:
php8.2 -m
建议定期检查并移除未使用的模块以保持效率。
安装 PHP 8.2 开发工具
对于 PHP 开发和调试:
sudo apt install php8.2-xdebug php8.2-pcov php8.2-dev
结论
总之,本指南已成功为您提供了在 Ubuntu 24.04、22.04 或 20.04 上安装 PHP 8.2 的步骤。提供的说明适用于各种服务器环境,无论是将 PHP 配置为 Apache 模块、将 PHP-FPM 与 Apache 一起使用,还是为 Nginx 设置 PHP 支持。定期更新您的系统和 PHP 版本以获得安全性和性能优势。
有用的链接
以下是一些与使用 PHP 相关的有价值的链接:
- PHP 官方网站:访问 PHP 官方网站,了解有关该编程语言、其功能和下载选项的信息。
- PHP 8.2 发行说明:探索 PHP 8.2 的发行说明,了解新功能、改进和变化。
- PHP 8.2 变更日志:查看 PHP 8 的更改日志,了解每个版本中更改和更新的详细列表。
- PHP 文档:访问综合文档,获取有关使用 PHP 和进行编程的详细指南。
- PHP 支持:查找各种支持资源以获取有关 PHP 的帮助,包括邮件列表和用户组。