我有以下设置似乎可以工作一段时间:根据配置,环境变量(如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设置,并且容器内的printenv给了我显示的TEST = 1。
有人可以告诉我这里发生了什么/发生了什么?它已经工作了一段时间,然后可能在进行一些重大更新后就坏了。
我尝试调试它,并在Symfony资料中找到一个非常奇怪的地方:https://github.com/symfony/symfony/blob/3.4/src/Symfony/Component/DependencyInjection/ContainerBuilder.php#L1416
在这行代码中,传递了一个值“ 2”,它不满足条件并被返回。
答案 0 :(得分:0)
看起来一切正常,只是参数调试输出使我感到困惑。