如何在Windows上为PHP CLI设置默认的php.inipath?

问题简介:

我需要加载pdo_mysql来运行命令php app/console doctrine:database:create和Symfony2的其他命令。

我find了一种方法来运行php -c "path/to/my/php.ini" app/console doctrine:database:create

问题:

由于我不想每次在PHP CLI中运行命令时都要将path添加到我的php.ini中,因此我每次 在控制台中 input php somecommand 时都会加载我所需的php.ini文件?

如果你添加path/to/your/php.ini到路径环境变量,然后运行php -c "php.ini" app/console doctrine:database:create

你可以试试吗?

创建一个自动运行PHP所需的选项的.CMD文件:

 path/to/php.exe -c "path/to/php.ini" %1 %2 %3 % %5 %6 %7 %8 %9 

并把它phpcli.cmd 。 确保它在你的搜索路径上,然后离开你。 你需要做的唯一的改变是运行phpcli而不是php。

有几种方法可以做到这一点,但是如果你不想混淆别名或者制作php.ini的多个副本,你也可以设置PHPRC环境变量。 我会认为这是建议更“永久”的方法。

在PHP文档中的更多信息: http : //php.net/manual/en/configuration.file.php

在Windows中,一个简单的方法是进入“系统属性”对话框; 右键单击“我的电脑”,然后单击“属性”,或使用控制面板中的“系统”项,然后进入“高级”设置,单击“环境变量”,然后单击“添加”您的用户,称之为“PHPRC”,并将路径复制到您的.ini文件中…例如,我的C:\MAMP\conf\php5.6.28

(这是在Win 7上,他们改变了一些不同版本的用户界面,但基本上是一样的)

你可以通过在命令行上执行php --ini来验证它是否工作,输出应该是这样的: Configuration File (php.ini) Path: C:\Windows Loaded Configuration File: C:\MAMP\conf\php5.6.28\php.ini Scan for additional .ini files in: (none) Additional .ini files parsed: (none)你也可以在windows命令提示符下输入echo %PHPRC% ,或者从Cygwin / bash / MinGW中echo $PHPRC等。将不得不重新启动任何现有的终端会话,以使其生效,但根据我的经验,这三者都可以使用,因为bash环境也继承了Windows环境变量。