使用终端,如何让OS X使用MAMP版本的PHP

时间:2013-02-11 14:43:42

标签: php macos yii terminal mamp

我目前正在学习Yii框架,我昨天运行的一个教程要求我测试项目的数据库连接。

这里的细节并不太重要,但基本上当我运行shell时,输入命令会引发错误,如下所示:

server:trackstar charlieryan$ protected/yiic shell

Yii Interactive Tool v1.1(基于Yii v1.1.13) 请输入“帮助”以获取帮助。输入“退出”退出。

  
    

echo Yii :: app() - > db-> connectionString;     PHP警告:PDO :: __ construct():[2002]在/ Applications / MAMP / htdocs / trackstar / yii / framework /中没有这样的文件或目录(尝试通过unix:///var/mysql/mysql.sock连接)第423行的db / CDbConnection.php     异常'CDbException',消息'CDbConnection无法打开数据库连接:SQLSTATE [HY000] [2002]在/Applications/MAMP/htdocs/trackstar/yii/framework/db/CDbConnection.php:381中没有这样的文件或目录     堆栈跟踪:

  

据我所知,这是因为正在使用Mac OS X自己的PHP版本,它不支持MySQL PDO驱动程序,但是MAMP自己的版本支持。

当我执行“which php”命令时,它返回“/ usr / bin / php”,这是不正确的版本。如何将其更改为默认为MAMP版本?

1 个答案:

答案 0 :(得分:2)

  

当我执行“which php”命令时,它返回“/ usr / bin / php”,这是不正确的版本。如何将其更改为默认为MAMP版本?

您需要将MAMP版本添加到路径中或使用完整路径调用它。我不确定MAMP的php二进制文件存在于哪里,但我可以在/Applications/MAMP/bin中说出它。因此,在这种情况下,您需要将该路径添加到.profile

vi ~/.profile
# if there is a PATH=... line add the mamp path in front of all the others
PATH=/Applications/MAMP/bin:/existing/paths/if/any:$PATH

然后关闭终端或运行命令:

source ~/.profile

这将重新加载您的个人资料。现在,如果你which php,它应该首先找到MAMP版本。同样,我不知道这是MAMP bin目录的正确路径,因此您需要验证并使用正确的路径。