PHP 团队尚未在2021 年 11 月 25 日正式发布 PHP 8.1 。通常在 PHP 的 GA 发布之前有 6 个月的预发布阶段。众所周知,PHP 是一种广泛使用的脚本语言。它主要用于创建 Web 应用程序和动态网页。在本指南中,我们将介绍在 CentOS 7|RHEL 7 上安装 PHP 8.1。
PHP 8.1 是版本 8.0 的更新,该版本是其前身 PHP 7.x 的主要版本。一些最强大的内容管理系统,如 Joomla、Drupal、WordPress、OpenCart、Magento、OctoberCMS 和 Joomla 都是用 PHP 创建的。PHP 8.1 附带了一组新特性和改进。在 CentOS 7|RHEL 7 上安装 PHP 8.1 并开始探索它的新特性和弃用。
PHP 8.1 有什么新功能?
枚举 ——它们现在被添加到 PHP 8.1 中只读属性 – 类属性可以标记为只读,因此只能写入一次从不返回类型 - PHP 8.1 中添加了一个名为 never 的新返回类型提示支持 DNS-over-HTTPS (DoH)AVIF 图像格式支持 ——PHP 8.1 的图像处理和 GD 扩展增加了对 AVIF 图像的支持。添加了对 Fibers的支持 ——管理并行性的低级机制使用 CURLStringFile 上传文件 – 在 PHP 8.1 中,PHP Curl 扩展现在支持使用文件上传的 HTTP(S) 请求添加纯交叉点类型功能PHP 8.1 添加 array_is_list 作为内置函数显式八进制数字符号新的 fdatasync() 和 fsync() 函数定义最终类常量在许多其他新功能和弃用中
在 CentOS 7|RHEL 7 上安装 PHP 8.1
由于 CentOS 7|RHEL 7 中的默认 YUM 存储库不包含 PHP 8.1 软件包,我们将使用 REMI 存储库在 CentOS 7|RHEL 7 上安装 8.1。
你可以;
安装 PHP 8.1 作为主要 PHP 版本(默认版本)与其他 PHP 版本(例如 8.0 和 7.4)一起安装 PHP 8.1
选项 1) 在 CentOS 7|RHEL 7 上安装 PHP 8.1 作为默认版本(仅限 GA 版本)
在这种方法中,您将在系统中默认拥有一个 PHP 版本。这假设应用程序已经过测试和认证,可以在 PHP 8.1 上运行。不建议在生产环境中默认使用 PHP 的 Beta 和 RC 版本。
如果您更喜欢将 PHP 8.1 作为CentOS 7|RHEL 7 的默认版本,请使用以下命令执行安装:
CentOS 7:
sudo yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
sudo yum -y install https://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum -y install yum-utils
sudo yum-config-manager --disable 'remi-php*'
sudo yum-config-manager --enable remi-php81
sudo yum repolist
sudo yum -y install php php-{cli,fpm,mysqlnd,zip,devel,gd,mbstring,curl,xml,pear,bcmath,json,opcache,redis,memcache}
RHEL 7:
sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
sudo yum install https://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum install yum-utils
sudo subscription-manager repos --enable=rhel-7-server-optional-rpms
sudo yum-config-manager --disable 'remi-php*'
sudo yum-config-manager --enable remi-php81
sudo yum repolist
sudo yum -y install php php-{cli,fpm,mysqlnd,zip,devel,gd,mbstring,curl,xml,pear,bcmath,json,opcache,redis,memcache}
在 CentOS 7 上安装 PHP 8.1 扩展 RHEL 7
要安装任何 PHP 8.1 扩展,请使用以下命令语法:
sudo yum install php-xxx
使用以下命令检查 PHP 版本:
$ php --version
PHP 8.1.0 (cli) (built: Nov 23 2021 18:56:11) (NTS gcc x86_64)
Copyright (c) The PHP Group
Zend Engine v4.1.0, Copyright (c) Zend Technologies
选项 2) 与其他 PHP 版本一起安装 PHP 8.1
对于 PHP 编程语言的早期版本,与其他稳定的 GA 版本一起安装是可行的。这使您可以在不破坏当前正在运行的应用程序的情况下测试新功能。
在 CentOS 7 上安装 PHP 8.1 和其他 PHP 版本 | RHEL 7
### CentOS 7 ###
sudo yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
sudo yum -y install https://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum -y install yum-utils
sudo yum-config-manager --disable 'remi-php*'
sudo yum-config-manager --enable remi-safe
sudo yum repolist
sudo yum install php81
### RHEL 7 ###
sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
sudo yum install https://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum install yum-utils
sudo subscription-manager repos --enable=rhel-7-server-optional-rpms
sudo yum-config-manager --disable 'remi-php*'
sudo yum-config-manager --enable remi-safe
sudo yum repolist
sudo yum install php81
使用以下命令安装额外的 PHP 扩展:
sudo yum install php81-php-xxx
请参见下面的示例:
sudo yum install php81-php-{cli,fpm,mysqlnd,zip,devel,gd,mbstring,curl,xml,pear,bcmath,json,opcache}
同意安装提示:
....
======================================================================================================================================================================================================
Package Arch Version Repository Size
======================================================================================================================================================================================================
Installing:
php81-php-bcmath x86_64 8.1.0~rc6-1.el7.remi remi-safe 86 k
php81-php-devel x86_64 8.1.0~rc6-1.el7.remi remi-safe 831 k
php81-php-fpm x86_64 8.1.0~rc6-1.el7.remi remi-safe 2.0 M
php81-php-gd x86_64 8.1.0~rc6-1.el7.remi remi-safe 91 k
php81-php-mbstring x86_64 8.1.0~rc6-1.el7.remi remi-safe 483 k
php81-php-mysqlnd x86_64 8.1.0~rc6-1.el7.remi remi-safe 190 k
php81-php-opcache x86_64 8.1.0~rc6-1.el7.remi remi-safe 414 k
php81-php-pear noarch 1:1.10.13-1.el7.remi remi-safe 364 k
php81-php-pecl-zip x86_64 1.20.0-1.el7.remi remi-safe 55 k
php81-php-xml x86_64 8.1.0~rc6-1.el7.remi remi-safe 184 k
Installing for dependencies:
php81-php-pdo x86_64 8.1.0~rc6-1.el7.remi remi-safe 131 k
php81-php-process x86_64 8.1.0~rc6-1.el7.remi remi-safe 90 k
Transaction Summary
======================================================================================================================================================================================================
Install 10 Packages (+2 Dependent packages)
Total download size: 4.9 M
Installed size: 20 M
Is this ok [y/d/N]: y
使用以下命令检查 PHP 8 版本和可用扩展
$ php81 --version
PHP 8.1.0 (cli) (built: Nov 23 2021 18:56:11) (NTS gcc x86_64)
Copyright (c) The PHP Group
Zend Engine v4.1.0, Copyright (c) Zend Technologies
with Zend OPcache v8.1.0, Copyright (c), by Zend Technologies
$ php81 --modules
[PHP Modules]
bcmath
bz2
calendar
Core
ctype
curl
date
dom
exif
fileinfo
filter
ftp
gd
gettext
hash
iconv
json
libxml
mbstring
mysqli
mysqlnd
openssl
pcntl
pcre
PDO
pdo_mysql
pdo_sqlite
Phar
posix
readline
Reflection
session
shmop
SimpleXML
sockets
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tokenizer
xml
xmlreader
xmlwriter
xsl
Zend OPcache
zip
zlib
[Zend Modules]
Zend OPcache
如果您一步一步地按照我们的指南进行操作,那么您应该在 CentOS 7|RHEL 7 系统上安装了 PHP 8.1。重要的 PHP 论坛和网站:
评论