期待已久的 PHP7.4 最新版本于 2019 年 11 月 28 日发布。它有很多新特性,比如
- 类型化属性
- 箭头函数
- 有限返回类型协方差和参数类型协方差
- 在数组中解包
- 数字文字分隔符
- 弱引用
- 允许来自 toString () 的异常:
- Opcache 预加载
- 一些弃用
- 从核心移除的扩展
PHP 7.1 和 7.2 的安全性最后一次安全性更新将在 12 月 1 号截止.
让我们看看如何将您的 PHP 安装升级到 7.4.
1. 添加 ondrej / php PPA
Ubuntu:
sudo add-apt-repository ppa:ondrej/php # 按 Enter 确认. sudo apt-get update
Debian:
sudo apt install apt-transport-https lsb-release sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg # 下载签名密钥 sudo sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list' # 将 Ondrej 的仓库添加到来源列表. sudo apt update
2. 安装 PHP 7.4 和所需的扩展
安装 PHP 7.4 核心程序
sudo apt install php7.4 php7.4-common php7.4-cli
安装所需的扩展
Simply prefix php7.4- with an extension that you need to install.\
For example to get the php-curl extension use php7.4-curl\
sudo apt install php7.4-curl php7.4-json php7.4-gd php7.4-mbstring php7.4-intl php7.4-bcmath php7.4-bz2 php7.3-readline php7.3-zip
3 为 Web 应用中添加 PHP 7.4
将 PHP 集成到 Web 服务器时,若使用 Nginx 或带 mod_event 的 Apache,则需要安装 php7.4-fpm 包。若使用 PHP 作为 Apache 的嵌入模块,则需要 libapache2-mod-php7.4 包。对于 Apache 而言,可使用 apachectl -V 来查看当前的 MPM 是 prefork 还是 event 模式。
Nginx 或使用 event MPM 的 Apache
sudo apt install php7.4-fpm
使用 prefork MPM 的 Apache:
sudo apt install libapache2-mod-php7.4 sudo a2enmod php7.4
4 卸载旧版本的 PHP
sudo apt purge php7.3 libapache2-mod-php7.3 # For removing PHP 7.3 sudo apt purge php7.2 libapache2-mod-php7.2 # For removing PHP 7.2 sudo apt purge php7.1 libapache2-mod-php7.1 # For removing PHP 7.1 sudo apt purge php7.0 libapache2-mod-php7.0 # For removing PHP 7.0
5 验证安装是否成功
通过以下方式验证 PHP 7.4 是否安装成功。
通过 CLI 验证
php -v
通过 Web 服务验证
创建 info.php 文件,该文件必须保存在 web 根目录下。对于 Ubuntu 和 Debian 系统而言,该目录的所在位置为 /var/www/html/
sudo nano /var/www/html/info.php
在编辑器中输入以下代码
<?php phpinfo();
完成后,保存并关闭文件。
现在,通过浏览器来访问该脚本,访问地址为 http://your_server_IP_address/info.php
,你将看到与下面内容类似的页面。
到此为止,PHP 7.4 已经成功运行。点击 这里 查看 PHP 7.4 的迁移指南。
原文地址:https://dev.to/pushkaranand/upgrading-to-php-7-4-26dg
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。