PHP:安装,在Linux上的多个PHP版本之间切换
#php #laravel #linux #backend

作为生产的初学者,您将面临许多您在进行个人项目时不知道的问题,其中一个人不得不处理使用较旧版本的PHP但也可以处理最新的旧项目同时PHP版本。这不仅是PHP,而且都会发生在每种编程语言中,因此我决定为那些刚开始并遇到这个问题的人撰写本文。
最简单的方法是在Docker上运行它,但这不是现在的话题,所以让我们开始。

本教程使用ubuntu,但它在任何其他发行版中都起作用。

安装多个版本

在ubuntu lts上,您需要添加Ondrej存储库来安装旧版本:

sudo add-apt-repository ppa:ondrej/php

对于此示例,我将安装PHP7.3

sudo apt install php7.3

如果您不指定PHP版本,则最新版本的PHP将从Ubuntu默认存储库中安装

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

感谢您在这里弥补,请随时分享您的想法和问题