Symfony4 - 选择退出“环境变量”功能并保留旧的parameters.yml文件?

时间:2018-01-21 00:12:40

标签: symfony symfony4

在Symfony4中,他们选择将parameters.yml替换为环境变量,如docs和迁移指南中所述:

  

将与基础架构相关的配置选项定义为环境   变量。在开发过程中,使用您的根目录下的.env文件   设定这些项目。

我真的不喜欢这种改变,我没有看到任何优势但只有缺点(例如我们需要重构应用程序,因为现在只允许标量值作为环境变量,你不能容纳不同的安装在同一环境等......)

所以我的问题是,是否有可能在Symfony4中保留旧的good parameters.yml文件?如何包含此文件并参考其参数,例如,在doctrine.yml和swiftmailer.yml中?

1 个答案:

答案 0 :(得分:5)

完成后,它非常简单,它使您迁移到Symfony4变得更加容易。

只需将parameters.ymlparameters.yml.dist移至config/,然后将其重命名为.yaml即可。

然后添加services.yaml:

imports:
    - { resource: parameters.yaml }

然后一切都会保持不变,例如doctrine.yaml文件将是:

doctrine:
    dbal:
        driver: 'pdo_mysql'
        server_version: '5.7'
        host:     "%database_host%"
        port:     "%database_port%"
        dbname:   "%database_name%"
        user:     "%database_user%"
        password: "%database_password%"
        ...

可选:添加https://github.com/Incenteev/ParameterHandler