1

我在 Mac OS X Yosemite 上使用 Symfony,我想设置一个环境变量来获取我的数据库信息。

由于我有很多项目,我需要一种方法来分离它们。我做了以下事情:

launchctl setenv SYMFONY__MYPROJECT__DATABASE__NAME test

然后,在我的项目中,我做了以下事情:

doctrine:
    dbal:
        connections:
            default:
                dbname: %myproject.database.name%

当我尝试运行我的页面时,我收到以下错误:

You have requested a non-existent parameter "myproject.database.name%

然后,我说,也许我应该使用 export 而不是 launchctl

export SYMFONY__MYPROJECT__DATABASE__NAME=test

但是即使重新启动后,错误也是一样的。我用的是MAMP PRO,不知道有没有链接。

编辑1:我寻找 and 的结果,phpinfo()变量php -i出现在$_ENV[]. 当我调试时,看起来环境变量没有与服务器中的环境变量合并...... https://github.com/symfony/symfony/issues/10208

我可以通过执行 fabpot 所做的修复来解决该问题app_dev.php

$_SERVER = array_merge($_SERVER, $_ENV);

但这并不是我真正想要的,将 app_dev.php 修改为 symfony 应该做的事情。

4

0 回答 0