由于项目和学习的需要,本机曾经升级到了5.5.38已经不够折腾了,所以时候升级一波5.6了(没必要到7的时候,我是不会去升级的)。首先直接去搜索引擎找便捷的方法呗,直接就选中了一款来自“简书”的文章...
由于项目和学习的需要,本机曾经升级到了5.5.38已经不够折腾了,所以时候升级一波5.6了(没必要到7的时候,我是不会去升级的)。
首先直接去搜索引擎找便捷的方法呗,直接就选中了一款来自“简书”的文章,因为它就简单的一条命令:
1 | curl -s http://php-osx.liip.ch/install.sh | bash -s 5.6 |
看到这个地址,我心里就放心了!因为上一个版本也是liip的。
我首先看了一下这个install.sh的内容,确定没有什么危险,里面其实就是检测一下设备的系统版本和cpu类型是否可以升级。
环境检测没问题就去下载了一个叫做“packager.tgz”的压缩包,然后解压,运行里面的pythony脚本。
12 | #TYPE = 5.6-10.10sudo packager.py install $TYPE-frontenddev |
看到了sudo哦,嘻嘻,自己下载那个packager.tgz看看python代码。好,打开packager.py,找到脚本入口:
c = Cli()
c.run()
嗯,好! 看不懂了。。。管他呢 直接运行吧。。。
然而结果是,install.sh运行没啥问题,到了python脚本的时候,要下载一个更新包,就一直不动了。
12 | downloading https://s3-eu-west-1.amazonaws.com/php-osx.liip.ch/install/5.6-10.10-frontenddev-latest.datdownloading https://s3-eu-west-1.amazonaws.com/php-osx.liip.ch/install/5.6-10.10/frontenddev/5.6-10.10-frontenddev-5.6.29-20170114-210819.tar.bz2 |
第一行是获取最新的更新包url,第二行是下载并保存这个更新包。
然而我却傻傻的等了一下午!!!!!一个下午,喝了两杯水,改了一个BUG,上了两次厕所! 等不了了,control+c终止脚本运行,重新运行试一下,结果还是一样。
所以我直接去浏览器打开这个URL,发现真的龟速啊!
机智的我直接用迅雷下好了,但是不知道这个包怎么用呀,里面除了包含编译好的php一整套,还有别的,我也不知是干嘛的和该怎么用,不行,不能自己覆盖,想看一下python脚本都执行了些什么,自己手动操作吧,但是打开python代码文件的之后,跑来跑去,给绕晕了。
最终,我选择在它下载这个更新文件的时候,替换成直接使用我本地下好的文件。(不得不说,我还是挺会想办法的)
12345678910111213 | def __fetchIndividual(self, url): try: print "downloading %s" % url filename, headers = urllib.urlretrieve(url) print "filename: %s" % filename self.__filename = filename self.__file = tarfile.open(self.__filename, 'r') self.__file.errorlevel = 2 return True except IOError: return False except tarfile.ReadError: return False |
果断修改成:
123456789101112131415161718 | def __fetchIndividual(self, url): try: print "downloading %s" % url # 修改开始 if url.find('5.6-10.10-frontenddev-5.6.29-20170114-210819.tar.bz2'): filename = "/usr/local/packager/tmp/5.6-10.10-frontenddev-5.6.29-20170114-210819.tar.bz2" else: filename, headers = urllib.urlretrieve(url) print "filename: %s" % filename # 修改结束 self.__filename = filename self.__file = tarfile.open(self.__filename, 'r') self.__file.errorlevel = 2 return True except IOError: return False except tarfile.ReadError: return False |
那一串字符其实就是要下载的文件的名字,这样他就不会去网上下载了直接用本地的。
好! 然后自己手动执行这个python脚本
1 | sudo /usr/local/packager/packager.py install 5.6-10.10-frontenddev |
没毛病,自己乖乖的执行完了。。。
最终:/usr/local/php5/bin/php -v
输出:
PHP 5.6.29 (cli) (built: Jan 14 2017 21:05:20)
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
with Xdebug v2.2.5, Copyright (c) 2002-2014, by Derick Rethans
没毛病!
感谢https://php-osx.liip.ch/提供的一切!
配置路径
安装完毕如果在终端里运行PHP -v命令,还是会显示mac自带的旧版本。因此,我们还需要配置一下路径。
在命令行中输入如下命令:
sudo vim ~/.bash_profile
然后,在文件的最后加上:
export PATH=/usr/local/php5-7.0.7-20160526-160257/bin:$PATH;
注意:我这里是以安装的PHP7.0的路径来配置的,你需要进到/usr/local中查看你所安装的PHP的路径。
最后,运行命令:
source ~/.bash_profile
配置完成,再试试php -v显示的就是最新安装的PHP版本了。
有人说要/etc/profile配置export PATH="/usr/local/php5/bin:$PATH"
至于这个真假,你们自己判断吧!
来源:本文内容搜集或转自各大网络平台,并已注明来源、出处,如果转载侵犯您的版权或非授权发布,请联系小编,我们会及时审核处理。
声明:江苏教育黄页对文中观点保持中立,对所包含内容的准确性、可靠性或者完整性不提供任何明示或暗示的保证,不对文章观点负责,仅作分享之用,文章版权及插图属于原作者。
Copyright©2013-2024 JSedu114 All Rights Reserved. 江苏教育信息综合发布查询平台保留所有权利
苏公网安备32010402000125 苏ICP备14051488号-3技术支持:南京博盛蓝睿网络科技有限公司
南京思必达教育科技有限公司版权所有 百度统计