参考了多个文章,并且进行测试实践,总结了如下正确的操作方式
实践
适用版本:
os x version: 10.12.3 (16d32)--------homebrew 1.3.2homebrew/homebrew-core (git revision aeab0; last commit 2017-09-14)--------php version in use: php71 56
并且,前提你已经按照php56了
1.brew update
需要先更新brew的软件仓库目录
2.brew upgrade
根据之前的update更新的软件仓库目录,用upgrade来更新所有软件和相关依赖,为了保证安装软件的正确
备注:
用doctor进行打印出错的详细地方,安装顺利的话,不需要使用
brew doctor
3.brew install php71
需要先安装这个php仓库
brew tap josegonzalez/homebrew-php
然后安装php71
brew install php71
需要注意的是,这里需要先解除homebrew与php56的关联,然后再安装php71
brew unlink php56
4.安装php-version
安装php-version
brew install php-version
设置php-version的初始化
source $(brew --prefix php-version)/php-version.sh
这样就可以使用多个版本了
php-version * 5.6.30 7.1.8➜ ~ php -versionphp 5.6.30 (cli) (built: sep 15 2017 14:11:24) (debug)copyright (c) 1997-2016 the php groupzend engine v2.6.0, copyright (c) 1998-2016 zend technologies➜ ~ php -version php 7.1.8 (cli) (built: sep 15 2017 14:26:34) ( nts )copyright (c) 1997-2017 the php groupzend engine v3.1.0, copyright (c) 1998-2017 zend technologies➜ ~ php-version 5.6.30* 7.1.8
遇到问题
报错:
dyld: library not loaded: /usr/local/opt/libpng/lib/libpng16.16.dylibreferenced from: /usr/local/bin/phpreason: incompatible library version: php requires version 45.0.0 or later, but libpng16.16.dylib provides version 38.0.0abort trap: 6
dyld: library not loaded: /usr/local/opt/libpng/lib/libpng16.16.dylib referenced from: /usr/local/cellar/php70/7.0.22_14/bin/php reason: incompatible library version: php requires version 48.0.0 or later, but libpng16.16.dylib provides version 45.0.0
其实报错都差不多,都是说libpng版本有问题,解决的办法有2个:
1.更新libpng,如果解决不了,就跳到2选项
brew upgrade libpng
2.不要使用php70,使用php71
7.0怎么测试都不行,切换7.1就好了
以上就是mac下多个php版本切换(可操作版)的详细内容。
