热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

聊聊Ubuntu中怎么切换多个PHP版本

如何在Ubuntu中切换多个PHP版本?下面本篇文章给大家介绍一下Ubuntu中切换多个PHP版本的方,希望对大家有所帮助!
如何在 Ubuntu 中切换多个 PHP 版本?下面本篇文章给大家介绍一下Ubuntu中切换多个 PHP 版本的方,希望对大家有所帮助!

php入门到就业线上直播课:进入学习
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API调试工具:点击使用

有时,最新版本的安装包可能无法按预期工作。你的程序可能与更新的软件包不兼容,并且仅支持特定的旧版软件包。在这种情况下,你可以立即将有问题的软件包降级到其早期的工作版本。

但是,你无需降级某些软件包。我们可以同时使用多个版本。例如,假设你在测试部署在 Ubuntu 22.04 LTS 中的LAMP 栈的 PHP 程序。过了一段时间,你发现应用程序在 PHP 7.2 中工作正常,但在 PHP 8.1 中不正常(Ubuntu 22.04 LTS 默认安装 PHP 8.x)。你打算重新安装 PHP 或整个 LAMP 栈吗?

但是没有必要。你甚至不必将 PHP 降级到其早期版本。在这个简短的教程中,我将向你展示如何在 Ubuntu 22.04 LTS 中切换多个 PHP 版本。它没你想的那么难。请继续阅读。

在多个 PHP 版本之间切换

要查看 PHP 的默认安装版本,请运行:

root@ubuntu-server:~# php -v
PHP 8.1.7 (cli) (built: Jun 25 2022 08:13:46) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.7, Copyright (c) Zend Technologies
    with Zend OPcache v8.1.7, Copyright (c), by Zend Technologies

如你所见,已安装的 PHP 的版本为 8.1.7。在测试你的程序几天后,你会发现你的程序不支持 PHP7.2。在这种情况下,同时使用 PHP7.x 和 PHP8.x 是个不错的主意,这样你就可以随时轻松地在任何支持的版本之间切换。

你不必删除 PHP8.x 或重新安装 LAMP 栈。你可以同时使用 PHP7.x 和 8.x 版本。

我假设你还没有在你的系统中卸载 PHP 7.2。万一你已将其删除,你可以使用下面的 PPA 再次安装它。

sudo add-apt-repository -y ppa:ondrej/php
sudo apt update
sudo apt install php7.2

从 PHP 8.x切换到 PHP 7.x

首先使用命令禁用 PHP 8.1 模块:

root@ubuntu-server:~# a2dismod php8.1
Module php8.1 disabled.
To activate the new configuration, you need to run:
systemctl restart apache2

接下来,启用 PHP 7.2 模块:

sudo a2enmod php7.2

将 PHP 7.2 设置为默认版本:

sudo update-alternatives --set php /usr/bin/php7.2

或者,你可以运行以下命令来设置默认情况下要使用的全局 PHP 版本。

sudo update-alternatives --config php

输入选择的号码将其设置为默认版本,或者只需按回车键保持当前选择。

如果你已安装其他 PHP 扩展,请将它们设置为默认值。

sudo update-alternatives --set phar /usr/bin/phar7.2

最后,重启 Apache Web 服务器:

sudo systemctl restart apache2

现在,检查 PHP 7.2 是否是默认版本:

root@ubuntu-server:~# php -v
PHP 7.2.7-0ubuntu0.18.04.2 (cli) (built: Jul 4 2018 16:55:24) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.2.7-0ubuntu0.18.04.2, Copyright (c) 1999-2018, by Zend Technologies

从 PHP 7.x 切换到 PHP 8.x

同样,你可以从 PHP 7.x 切换到 PHP 8.x 版本,如下所示。

sudo a2enmod php8.1
sudo a2dismod php7.2
sudo update-alternatives --set php /usr/bin/php8.1
sudo systemctl restart apache2

提醒一句:

目前稳定版php7.2已经停止支持

所以,建议尽快升级所有 PHP 程序并与 PHP 8.x 兼容。

《PHP视频教程》

以上就是聊聊Ubuntu中怎么切换多个 PHP 版本的详细内容,更多请关注其它相关文章!


推荐阅读
  • PHP 5.2.5 安装与配置指南
    本文详细介绍了 PHP 5.2.5 的安装和配置步骤,帮助开发者解决常见的环境配置问题,特别是上传图片时遇到的错误。通过本教程,您可以顺利搭建并优化 PHP 运行环境。 ... [详细]
  • 本文介绍如何解决在 IIS 环境下 PHP 页面无法找到的问题。主要步骤包括配置 Internet 信息服务管理器中的 ISAPI 扩展和 Active Server Pages 设置,确保 PHP 脚本能够正常运行。 ... [详细]
  • This guide provides a comprehensive step-by-step approach to successfully installing the MongoDB PHP driver on XAMPP for macOS, ensuring a smooth and efficient setup process. ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • 如何配置Unturned服务器及其消息设置
    本文详细介绍了Unturned服务器的配置方法和消息设置技巧,帮助用户了解并优化服务器管理。同时,提供了关于云服务资源操作记录、远程登录设置以及文件传输的相关补充信息。 ... [详细]
  • 本文详细介绍了macOS系统的核心组件,包括如何管理其安全特性——系统完整性保护(SIP),并探讨了不同版本的更新亮点。对于使用macOS系统的用户来说,了解这些信息有助于更好地管理和优化系统性能。 ... [详细]
  • 本文介绍如何通过SSH协议使用Xshell远程连接到Ubuntu系统。为了实现这一目标,需要确保Ubuntu系统已安装并配置好SSH服务器,并保证网络连通性。 ... [详细]
  • 云计算的优势与应用场景
    本文详细探讨了云计算为企业和个人带来的多种优势,包括成本节约、安全性提升、灵活性增强等。同时介绍了云计算的五大核心特点,并结合实际案例进行分析。 ... [详细]
  • JavaScript 中创建对象的多种方法
    本文详细介绍了 JavaScript 中创建对象的几种常见方式,包括对象字面量、构造函数和 Object.create 方法,并提供了示例代码和属性描述符的解释。 ... [详细]
  • 嵌入式开发环境搭建与文件传输指南
    本文详细介绍了如何为嵌入式应用开发搭建必要的软硬件环境,并提供了通过串口和网线两种方式将文件传输到开发板的具体步骤。适合Linux开发初学者参考。 ... [详细]
  • 本文详细介绍了如何在PHP中进行数组删除、清空等操作,并提供了在Visual Studio Code中创建PHP文件的步骤。 ... [详细]
  • Scala 实现 UTF-8 编码属性文件读取与克隆
    本文介绍如何使用 Scala 以 UTF-8 编码方式读取属性文件,并实现属性文件的克隆功能。通过这种方式,可以确保配置文件在多线程环境下的一致性和高效性。 ... [详细]
  • 在创建新的Android项目时,您可能会遇到aapt错误,提示无法打开libstdc++.so.6共享对象文件。本文将探讨该问题的原因及解决方案。 ... [详细]
  • ThinkPad USB 硬盘启动 Ubuntu 系统的详细步骤
    本文介绍如何通过USB硬盘在联想ThinkPad上启动Ubuntu系统,包括BIOS设置和启动优先级调整。 ... [详细]
  • 在PHP后端开发中遇到一个难题:通过第三方类文件发送短信功能返回的JSON字符串无法解析。本文将探讨可能的原因并提供解决方案。 ... [详细]
author-avatar
爱你宝贝胡
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有