我在我的机器上安装了MAMP(附带PHP 5.5)。 localhost指向/ Applications / MAMP / htdocs。当我试图在终端中使用composer在htdocs中安装依赖项时,问题就出现了。作曲家抱怨PHP必须是5.4或以上。
我猜它抱怨PHP附带OSX。所以我已经将PHP升级到5.6
curl -s http://php-osx.liip.ch/install.sh | bash -s 5.6
但是当我做的时候
$ php -v
我还是
PHP 5.3.28 (cli) (built: Aug 29 2014 18:52:17)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2013 Zend Technologies
而Composer仍在抱怨......
为什么?以及如何解决这个问题?
答案 0 :(得分:23)
如果您使用curl进行升级,请复制&粘贴以下代码行,然后按Enter键。
$ export PATH = / usr / local / php5 / bin:$ PATH
现在,输入 $ php -v
如果操作正确,则应显示以下内容
PHP 5.6.23(cli)(建于2016年6月26日13:17:47) 版权所有(c)1997-2016 PHP小组 Zend Engine v2.6.0,版权所有(c)1998-2016 Zend Technologies Zend Technologies的Zend OPcache v7.0.6-dev,Copyright(c)1999-2016 与Xdebug v2.2.5,版权所有(c)2002-2014,作者Derick Rethans
答案 1 :(得分:10)
如果您使用Homebrew安装了PHP 5.6,则可以使用:
打开终端,运行open -a TextEdit ~/.bash_profile
,然后将其粘贴到文件的末尾:
# Use Home-brewed PHP 5.6 instead of pre-installed version (5.3)
export PATH="$(brew --prefix homebrew/php/php56)/bin:$PATH"
保存文件并重新启动终端。
答案 2 :(得分:3)
感谢您的帮助。
这是由于$ PATH中的顺序,如上面评论中发布的Marc和jkj。
我找不到重新订购$ PATH的方法(做过一些研究,但未能找到一个简单的方法),但我能够通过简单地删除此帖后面安装的Apahce2来解决这个问题:
https://apple.stackexchange.com/questions/41143/how-to-revert-default-mac-apache-install-to-original
2014年9月9日更新: 经过一番研究,以下程序将使PHP版本设置系统广泛。
该程序来自此source,请在该页面下方查找评论并找到用户Amtriorix。
我只是在这里复制/粘贴他的解决方案:
The php-cli version is still the Apple version if You do not change it. Your php on apache can be different as the cli version, including used modules ! So beware. As Brian Wynn did mention, of course You can modify Your PATH settings to write into your ~/.profile file the following export PATH=/usr/local/php5/bin:$PATH Most likely a better approach is to make the setting system wide. You should symlink to the right php executable. So: #cd /usr/bin #mv php php.org #ln -s /usr/local/php5/bin/php test if it works: #php -v && php -m && php --ini --> should be php-osx version with related modules...
答案 3 :(得分:0)
重启终端,运行php -v进行测试。
export PATH="/usr/local/mysql/bin:/usr/local/bin:/usr/local:$PATH"