php - Symfony 3.4 用 parameters.yml 中的变量覆盖环境变量
问题描述
我有以下设置,它似乎工作了一段时间:环境变量,如 TEST=1,并根据配置在 parameters.yml 中定义了默认值:
parameters:
env(TEST): 2
当我转到控制台并输出容器参数时,它始终是 parameters.yaml 中的值:
bin/console debug:container --parameters | grep env
env(TEST) 2
我也尝试完全按照文档中所说的那样做:
TEST: "%env(TEST)%"
env(TEST): 2
现在,当我转储参数时,我同时拥有它们:
bin/console debug:container --parameters | grep env
TEST %env(TEST)%
env(TEST) 2
更准确地说:我使用 docker setup,容器内的 printenv 显示了我的 TEST=1。
有人可以解释一下这里发生了什么吗?它已经工作了一段时间,然后,可能在一些重大更新之后,被打破了。
我尝试调试它并在 Symfony 源中找到一个非常奇怪的地方:https ://github.com/symfony/symfony/blob/3.4/src/Symfony/Component/DependencyInjection/ContainerBuilder.php#L1416
在那一行,传递了一个值“2”,它不满足条件并被返回。
解决方案
看起来一切正常 - 只是参数调试输出让我感到困惑。
推荐阅读
- python - Python Dash:如何使用自定义 CSS 设置 dash 组件的样式?
- powershell-core - PowerShell Core `Select-Xml` 不返回任何内容
- python - 在分隔符处加入 python 列表
- javascript - 强制 RTL 的 NativeBase 选项卡问题 - 修复
- javascript - 如何在谷歌应用程序制造商中修复文本框标签的位置?
- javascript - Node + websocket 向客户端发送消息
- sql - 连接到 SQL Server 时出错。服务器未找到或无法访问
- php - 从目录句柄读取条目的问题
- python-3.x - 在 python 中遍历文件夹时遇到一些问题
- javascript - Javascript 测试引用相同的对象数组,即使我在每次测试之前都将其清空