使用终端,我如何让OSX使用PHP的MAMPs版本
我目前正在学习Yii框架,昨天我正在学习的一个教程要求我测试一个项目的数据库连接 这里的细节并不太重要,但基本上,当我运行shell并键入命令时,它会抛出一个错误,如下所示:使用终端,我如何让OSX使用PHP的MAMPs版本,php,macos,yii,terminal,mamp,Php,Macos,Yii,Terminal,Mamp,我目前正在学习Yii框架,昨天我正在学习的一个教程要求我测试一个项目的数据库连接 这里的细节并不太重要,但基本上,当我运行shell并键入命令时,它会抛出一个错误,如下所示: server:trackstar charlieryan$ protected/yiic shell Yii交互工具v1.1(基于Yii v1.1.13) 请键入“帮助”以获取帮助。键入“退出”退出 echo Yii::app()->db->connectionString; PHP警告:PDO::_construct(
server:trackstar charlieryan$ protected/yiic shell
Yii交互工具v1.1(基于Yii v1.1.13)
请键入“帮助”以获取帮助。键入“退出”退出
echo Yii::app()->db->connectionString;
PHP警告:PDO::_construct():[2002]没有这样的文件或目录(正在尝试通过unix:///var/mysql/mysql.sock)第423行的/Applications/MAMP/htdocs/trackstar/yii/framework/db/CDbConnection.php中
异常“CDbException”,在/Applications/MAMP/htdocs/trackstar/yii/framework/DB/CDbConnection.php:381中显示消息“CDbConnection未能打开数据库连接:SQLSTATE[HY000][2002]没有此类文件或目录”
堆栈跟踪:
据我所知,这是因为正在使用Mac OS X自己的PHP版本,该版本不支持MySQL PDO驱动程序,但MAMP自己的版本支持
当我执行“which php”命令时,它返回“/usr/bin/php”,这是不正确的版本。如何将其更改为默认的MAMP版本
当我执行“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
这将重新加载您的个人资料。现在,如果您选择哪个php
,它应该首先找到MAMP版本。同样,我不知道这是MAMP bin dir的正确路径,所以您需要验证这一点并使用正确的路径