作为生产环境中的初学者,您将面临许多在执行个人项目时没有意识到的问题,其中之一是必须处理使用旧版本 PHP 的旧项目,但也使用最新的 PHP 版本同一时间。不仅仅是 PHP,每种编程语言都会发生这种情况,因此我决定为那些刚开始使用并遇到此问题的人写这篇文章。
最简单的方法是在 docker 上运行它,但这不是现在的主题,所以让我们开始吧。
本教程使用 Ubuntu,但它适用于任何其他发行版。
安装多个版本
在 Ubuntu LTS 上,您需要添加 ondrej 存储库来安装旧版本:
sudo add-apt-repository ppa:ondrej/php
对于这个例子,我将安装 php7.3
sudo apt install php7.3
如果您不指定 PHP 版本,则将从 Ubuntu 默认存储库安装最新版本的 PHP
sudo apt install php
现在在终端上,如果你检查你的 PHP 版本,默认情况下它将来自 Ubuntu 的默认存储库
php -v PHP 8.2.8 (cli) (built: Jul 8 2023 07:10:21) (NTS) Copyright (c) The PHP Group Zend Engine v4.2.8, Copyright (c) Zend Technologies with Zend OPcache v8.2.8, Copyright (c), by Zend Technologies
现在,为了使用旧的 PHP 版本,我们将创建一个符号链接,因此让我们将默认的 PHP 版本移动到具有其版本名称的文件夹中。
sudo mv /usr/bin/php /usr/bin/php8.2
现在,如果您尝试使用php -v,它将不起作用,因为现在它已更改为php8.2
php要使用旧版本作为 PHP 命令,您现在将创建一个符号链接,该链接在调用时调用您所需的 PHP 版本。
sudo ln -s /usr/bin/php7.3 /usr/bin/php
现在,如果您尝试php -v,您在创建符号链接时指定的 PHP 版本应该运行。
php -v PHP 7.3.33-11+ubuntu22.04.1+deb.sury.org+1 (cli) (built: Jun 8 2023 15:22:14) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.3.33, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.3.33-11+ubuntu22.04.1+deb.sury.org+1, Copyright (c) 1999-2018, by Zend Technologies
现在要切换回任何其他 php 版本,您必须取消链接才能创建另一个符号链接,
sudo unlink /usr/bin/php
只需重复链接和取消链接即可在多个 PHP 版本之间来回切换
sudo ln -s /usr/bin/php8.2 /usr/bin/php
感谢您来到这里,请随时分享您的想法和问题
在 Linux (Ubuntu/Debian) 上,还可以使用以下命令 update-alternatives:文章来源:https://www.toymoban.com/diary/php/299.html
sudo update-alternatives --list php sudo update-alternatives --config php
文章来源地址https://www.toymoban.com/diary/php/299.html
到此这篇关于PHP在Linux上安装与多个PHP版本切换方法详解的文章就介绍到这了,更多相关内容可以在右上角搜索或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!