在这个简短的教程中,我将向你展示如何在Ubuntu 18.04 LTS中的多个PHP版本之间切换,这并不像你认为的那么难。
在多个PHP版本之间切换
要检查默认安装的PHP版本,请运行:$ 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.2.7,测试应用程序几天后,假如你发现应用程序不支持PHP7.2,在这种情况下,同时使用PHP5.x版本和PHP7.x版本是一个好主意,这样你可以在任何时候轻松地在任何支持的版本之间切换。
不需要删除PHP7.x或重新安装LAMP堆栈,可以同时使用PHP5.x和7.x版本。
你可以从PPA安装PHP5.6:$ sudo add-apt-repository -y ppa:ondrej/php
$ sudo apt update
$ sudo apt install php5.6
从PHP7.x切换到PHP5.x
首先使用命令禁用PHP7.2模块:$ sudo a2dismod php7.2
Module php7.2 disabled.
To activate the new configuration, you need to run:
systemctl restart apache2
接下来,启用PHP5.6模块:$ sudo a2enmod php5.6
设置PHP5.6为默认版本:$ sudo update-alternatives --set php /usr/bin/php5.6
或者,你可以运行以下命令来设置系统范围默认的PHP版本。$ sudo update-alternatives --config php
输入版本号,以便将它设置为默认版本,或按ENTER键保留当前选择。
php配置
在这样的情况下,你已经安装了其他PHP扩展,将它们设置为默认值。$ sudo update-alternatives --set phar /usr/bin/phar5.6
最后,重新启动Apache web服务器:$ sudo systemctl restart apache2
现在,检查PHP5.6是否为默认版本:$ php -v
PHP 5.6.37-1+ubuntu18.04.1+deb.sury.org+1 (cli)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies
从PHP5.x切换到PHP7.x
同样,你可以从PHP5.x切换到PHP7.x版本,如下所示。$ sudo a2enmod php7.2$ sudo a2dismod php5.6$ sudo update-alternatives --set php /usr/bin/php7.2$ sudo systemctl restart apache2