我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

本文中的内容适合小白使用,简单无脑。不过苏南大叔不是太喜欢本文中的php切换方式,主要原因是:这两种方式都扯上了apache,而苏南大叔日常安装使用的是nginx。所以,看着代码去自动配置apache的话,是很奇怪的感觉。

苏南大叔:mac多php环境,如何快速切换php版本? - mac-switch-php
mac多php环境,如何快速切换php版本?(图7-1)

本文测试环境是:mac,共涉及两个软件:brew-php-switchersphp。两者不用问谁好谁坏,基本上一致。从报错信息上看的话,苏南大叔有理由怀疑两者存在抄袭的关系。如果您喜欢更弱智点的,选可以自动下载phpbrew-php-switchersphp更清爽一些,似乎不会管那么多闲事,而且名字更短,敲起来更省力。

方案一:brew-php-switcher

brew-php-switcher是通过brew安装的,安装方式如下:

brew install brew-php-switcher

使用方式:

brew-php-switcher <version>

为了不牵扯apache,苏南大叔推荐的更清爽的使用方式是:

brew-php-switcher <version> -s

例如:

brew-php-switcher 5.6 -s

苏南大叔:mac多php环境,如何快速切换php版本? - brew-php-switcher-command
mac多php环境,如何快速切换php版本?(图7-2)

默默的吐槽:命令真长啊,敲起来真费劲啊。是不是需要alias一下啊。相关文章:

方案二:sphp

sphp这个的安装,是不走寻常路的。需要您到github上面主动下载sphp,然后放到/usr/local/bin/目录下面。并且给予一个+x可执行的权限。

下载地址:

安装命令:

cd /usr/local/bin
rm -rf sphp.*
sudo wget --no-check-certificate https://raw.githubusercontent.com/sgotre/sphp-osx/master/sphp -O sphp
sudo chmod +x /usr/local/bin/sphp

这里,同样可以使用-s命令,不牵扯apache的事情。例如:

sphp 5.6 -s

苏南大叔:mac多php环境,如何快速切换php版本? - sphp-command
mac多php环境,如何快速切换php版本?(图7-3)

注意事项

这里出现的php的安装方式(根本上来说,是最终存储目录)是有要求的。参见:

sphp 7.1
Sorry, but php@7.1 is not installed via brew. Install by running: brew install php@7.1
brew install php@7.2
==> Downloading https://homebrew.bintray.com/bottles/php@7.2-7.2.28.mojave.bottl
==> Downloading from https://akamai.bintray.com/39/391d87bcc35ecd71800b588c50810

苏南大叔:mac多php环境,如何快速切换php版本? - command-error
mac多php环境,如何快速切换php版本?(图7-4)

环境变量

无论是brew-php-switcher还是sphp,都会有下面类似的输出,让您修改环境变量。在这里苏南大叔是不推荐您这么操作的,如果不信,你多测试几次就知道了。这个操作基本上是画蛇添足,而且一旦添加一次,后面基本上就中毒的节奏。-v就永远改不过来了。强烈建议您不要做本环节的测试,如果添加了,建议你手动删除相关代码。

echo 'export PATH="/usr/local/opt/php@7.2/bin:$PATH"' >> ~/.bash_profile
echo 'export PATH="/usr/local/opt/php@7.2/sbin:$PATH"' >> ~/.bash_profile

如果您修改了这个环境变量,那么记得source一下才能生效。

source ~/.bash_profile

苏南大叔:mac多php环境,如何快速切换php版本? - bash_profile
mac多php环境,如何快速切换php版本?(图7-5)

切换php-fpm服务

通过本文中的命令切换php之后,您可能还需要切换php-fpm,否则phpinfo()可能并不会输出合适的结果。

苏南大叔:mac多php环境,如何快速切换php版本? - phpinfo
mac多php环境,如何快速切换php版本?(图7-6)

您可能需要下面的命令:
查看所有的服务:

brew services list

结束php@5.6服务:

brew services stop php@5.6

启动php72服务:

brew services start php@7.2
brew services start php72

苏南大叔:mac多php环境,如何快速切换php版本? - brew-services-list
mac多php环境,如何快速切换php版本?(图7-7)

相关文章

总结

通过本文的分析,苏南大叔觉得,如果使用参数-s的话,这两个工具也还是不错的选择。本文中的内容,在以前的文章中,苏南大叔的文章多次分析php的切换问题了。具体的可以参见相关文章中的链接。更多php相关博客文章,请点击:

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   php    mac