如何在CLI中编辑php.ini

时间:2012-01-07 03:45:18

标签: mysql symfony1 doctrine terminal command-line-interface

我正在使用MAMP开发一个symfony项目。

我正在尝试使用此脚本从终端将数据加载到sql中:

php symfony doctrine:insert-sql

我收到此错误:

找不到名为mysql的驱动程序

论坛已经解释过你应该启用pdo_sql。

这在MAMP / conf / php5.2 / php.ini和MAMP / conf / php5.3 / php.ini中启用

研究文档指出CLI中的php.ini文件与位于apache中的php.ini文件不同。

如何在CLI中找到并编辑php.ini文件,这明显不同于MAMP目录中的文件?

2 个答案:

答案 0 :(得分:3)

在命令行上运行:

php -info | grep Confi

它应该给你一个像

这样的输出
Configuration File (php.ini) Path => /etc/php5/cli
Loaded Configuration File => (none)

但你不必编辑它。你可以简单地使用MAMP使用的那个:

php -c /path/to/your/php.ini symfony doctrine:insert-sql

答案 1 :(得分:3)

好的,我对多个文件进行了多次更改。我不知道它开始工作的地方,但现在好了。我将完成我的编辑工作,希望能帮助其他人解决这个问题。

首先,我使用终端中的这个脚本在Finder中显示文件:

defaults write com.apple.finder AppleShowAllFiles TRUE

killall Finder

其次,我使用他提供的脚本使用终端(感谢Cassy)找到我的CLI php.ini文件所在的位置:

php -info | grep Confi

此输出类似于:

Configuration File (php.ini) Path => /etc
Loaded Configuration File => /private/etc/php.ini

此位置正确,无法使用MAMP激活symfony所需的pdo_mysql.so文件。

所以,以锤子到家蝇的方式,我介绍了这些步骤:

  1. 在/Applications/MAMP/conf/php5.3/中打开php.ini并复制以下行:

    延长= pdo_mysql.so

  2. 在/ private / etc /中打开php.ini(这是你必须将隐藏文件设置为可见的地方),并将上面的代码(extension = pdo_mysql.so)粘贴到文件中。我将其粘贴在注释掉的扩展名下,但我认为这不重要。

  3. 在用户目录中打开.bash_profile(这通常是您的计算机名称,即Carey,Steve,Holly)

  4. 插入以下代码:

    export PATH =:/ Applications / MAMP / bin / php5.3 / bin

  5. 最后,打开httpd.conf并粘贴以下代码:

    php_value include_path“/Applications/MAMP/conf/php5.3/php.ini” PHPIniDir“/Applications/MAMP/conf/php5.3/php.ini”

  6. 重新启动Apache后,我查看了终端中的php信息:

    php -i
    

    它说:

    Configuration File (php.ini) Path => /Applications/MAMP/conf/php5.3
    Loaded Configuration File => /Applications/MAMP/conf/php5.3/php.ini
    

    现在在终端中输入php -m,它会给你一个php模块列表。在列表中查找pdo_mysql。

    如果存在,使用symfony构建和填充数据库应该可行。