php多版本并存和版本切换

安装

下载不同版本的PHP源码到服务器上,在编译安装时为不同的版本指定不同的路径,例如:

--prefix=/usr/local/php5.6 //指定PHP5.6版本的安装路径
--prefix=/usr/local/php7.2.3 //指定PHP7.2版本的安装路径

本地执行脚本指定PHP版本

安装好之后,如果需要在服务器端执行PHP脚本,假设已进入脚本的路径下,为test.php。使用不同版本PHP执行PHP文件的命令如下:

/usr/local/php5.6/bin/php test.php      //使用PHP5.6执行脚本
/usr/local/php7.2.3 test.php            //使用PHP7.2.3执行脚本

也可以修改/etc/profile文件中的PATH环境变量,将需要的版本的PHP的bin目录加到环境变量中,这样,只要在任何路径下调用PHP,使用的都是在环境变量中设置的版本了。环境变量配置示例如下:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/php5.6/bin"

指定浏览器访问时执行的PHP版本

先执行命令ps aux | grep php查看当前是否有php-fpm正在运行,如果有,将之关闭。
然后执行命令/usr/local/php5.6/sbin/php-fpm启动5.6版本的php-fpm,这样,前端访问服务器时,所有的脚本将由php5.6进行解释执行。

这样就实现了PHP多个版本的切换。

不过两个不同的php版本是通过编译安装的话,很容易出问题,因为他们倚赖的库的版本可能不一样,这样可能需要安装不同依赖版本的库就可以解决,有时间折腾可以尝试。

你可能感兴趣的:(PHP)