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

苏南大叔在本篇文章中,描述一个老话题,就是如何使用brew安装php老版本的问题。众所周知,brew现在对php及周边软件的很多老版本,都是不支持的。比如php@5.6或者php-redis等等。但是,大家总是会有各种各样的理由,需要使用brew安装这些早期的版本。这样的话,该如何操作呢?

苏南大叔:brew如何安装php5.6?brew官方已不再支持php老版本 - brew-install-php56-hero
brew如何安装php5.6?brew官方已不再支持php老版本(图6-1)

本文中,苏南大叔带来了一个可能的方案。当然,也建议您阅读一下文末的相关文章链接。本文测试环境:mac/homebrew@2.2.9-25-g19050bd

不能安装php@5.6

在2018年1月19号之前,还是可以使用brew直接安装php@5.6的。但是,brew官方对php及周边生态做了重大的规划。安装老版本,就成了一个非常困难的事情了。下面的链接,是相关声明:

在2018年1月19号之后,试图安装php@5.6的话,您可能看到下面的截图类似内容:

brew install php@5.6

苏南大叔:brew如何安装php5.6?brew官方已不再支持php老版本 - 001-brew-install-php56-fail
brew如何安装php5.6?brew官方已不再支持php老版本(图6-2)

试图搜索php相关信息的话,也无法找到php@5.6的字样。

brew search php

苏南大叔:brew如何安装php5.6?brew官方已不再支持php老版本 - 002-brew-search-php56-fail
brew如何安装php5.6?brew官方已不再支持php老版本(图6-3)

tap一下

相关的解决方案,其实有很多个,苏南大叔也在以前的文章中,也曾经有提到过一个,具体见文末相关链接。在本文中,核心操作就下面的这句话了。tap一下exolnet/homebrew-deprecated

brew tap exolnet/homebrew-deprecated

苏南大叔:brew如何安装php5.6?brew官方已不再支持php老版本 - 003-brew-tap
brew如何安装php5.6?brew官方已不再支持php老版本(图6-4)

再次安装

经过tap后,brew就可以识别出php@5.6了。

苏南大叔:brew如何安装php5.6?brew官方已不再支持php老版本 - 004-brew-search-php56-ok
brew如何安装php5.6?brew官方已不再支持php老版本(图6-5)

brew install php@5.6

苏南大叔:brew如何安装php5.6?brew官方已不再支持php老版本 - 005-brew-install-php56-ok
brew如何安装php5.6?brew官方已不再支持php老版本(图6-6)

下面是一些可能的有用信息:

The php.ini and php-fpm.ini file can be found in:
    /usr/local/etc/php/5.6/

php@5.6 is keg-only, which means it was not symlinked into /usr/local,
because this is an alternate version of another formula.

If you need to have php@5.6 first in your PATH run:
  echo 'export PATH="/usr/local/opt/php@5.6/bin:$PATH"' >> ~/.bash_profile
  echo 'export PATH="/usr/local/opt/php@5.6/sbin:$PATH"' >> ~/.bash_profile

For compilers to find php@5.6 you may need to set:
  export LDFLAGS="-L/usr/local/opt/php@5.6/lib"
  export CPPFLAGS="-I/usr/local/opt/php@5.6/include"

To have launchd start exolnet/deprecated/php@5.6 now and restart at login:
  brew services start exolnet/deprecated/php@5.6
Or, if you don't want/need a background service you can just run:
  php-fpm

相关链接

总结

注意,未完待续。在本文中,苏南大叔仅仅是安装好了php@5.6,但是因为本地还有php@7系列程序。那么两者之间如何切换呢?这可能就是下一篇文章中,需要进行探讨的了。欢迎参考苏南大叔的php系列博客:

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

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

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

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