Symfony 如何使用环境变量来设置一些参数而不是parameters.yml?

Symfony 如何使用环境变量来设置一些参数而不是parameters.yml?,symfony,parameters,environment-variables,symfony-3.4,Symfony,Parameters,Environment Variables,Symfony 3.4,我正在尝试将我的数据库名称和密码设置为symfony 3.4应用程序中的环境变量 我已经将配置文件中的值更改为: dbname: '%env(DB_NAME)%' user: '%env(DB_USER)%' password: '%env(DB_PASSWORD)%' 这是我得到的错误,它似乎根本没有检查环境 您请求了一个不存在的参数envDB_名称 我是不是遗漏了什么?我还尝试了dotenv组件,但无法使用symfony 3.4安装它。在安装UnifikDataba

我正在尝试将我的数据库名称和密码设置为symfony 3.4应用程序中的环境变量

我已经将配置文件中的值更改为:

    dbname: '%env(DB_NAME)%'
    user: '%env(DB_USER)%'
    password: '%env(DB_PASSWORD)%'
这是我得到的错误,它似乎根本没有检查环境

您请求了一个不存在的参数envDB_名称


我是不是遗漏了什么?我还尝试了dotenv组件,但无法使用symfony 3.4安装它。

在安装UnifikDatabaseConfigBundle后,我发现了导致错误的原因,该组件添加到AppKernel a函数中:

protected function getContainerBuilder()
{
    return new ContainerBuilder(new ParameterBag($this->getKernelParameters()));
}

这个导致此错误的函数感谢大家的帮助

当您尝试安装Dotenv组件时,您会遇到什么错误?-结论:不要安装symfony/symfony v3.4.28-结论:删除symfony/symfony v3.4.27 symfony/symfony^3.4的安装请求->可由symfony/symfony满足[v3.4.0,v3.4.0,v3.4.1,v3.4.10,v3.4.12,v3.4.13,v3.4.14,v3.4.15,v3.4.0,v3.4.0,v3.4.4.0,v3.4.4.3.4.0,v3.4.3.3.4.10,v3.3.3.4.4.3,v3.5,v3.3.4.3.3.4.3.3.3.3.4.14,v3.5,v3.5,v3.3.3.4.3.4.3.3.3.3.4.4.4.4.4.5,v3.5,v3.5,v3.4.4.3.4.4.4.4.4.4.15,v3.15,v3.3.3.4.3.->可满足symfony/dotenv的要求[v4.3.0,v4.3.1]。我想这与版本有关,但在symfony文档中,EV应该可以工作,而不需要额外的组件来使用symfony/dotenv^4.3。看起来您正在尝试安装4.3版本,而不是3.4。我只是让composer需要symfony/dotenv,而没有指定任何版本