Php 按环境具有不同值参数的Symfony服务
我想用Symfony在服务中按环境设置不同的param值。下面的不起作用,但它只是给出一个想法 config.ymlPhp 按环境具有不同值参数的Symfony服务,php,symfony,Php,Symfony,我想用Symfony在服务中按环境设置不同的param值。下面的不起作用,但它只是给出一个想法 config.yml mytest: key: "VALUE_1" config_dev.yml mytest: key: "VALUE_2" 服务.yml apiclient: class: My\Class arguments: apikey: "@mytest.key" 最简单的方法是定义一个参数: 在con
mytest:
key: "VALUE_1"
config_dev.yml
mytest:
key: "VALUE_2"
服务.yml
apiclient:
class: My\Class
arguments:
apikey: "@mytest.key"
最简单的方法是定义一个参数: 在
config.yml
的参数部分下添加
parameters:
mytest.key: "VALUE_1"
类似地,在config_dev.yml
中(如果没有参数
部分,只需创建它)
然后你就做了:
apiclient:
class: My\Class
arguments:
apikey: "%mytest.key%"
我认为不可能创建嵌套参数。这是可能的,但在这种情况下显然是过度工程。@..
用于引用服务,您希望有一个参数,因此您需要以我不喜欢(我知道)的方式编写%myParam%
,因为通常在composer安装后会询问参数(我知道也可以跳过一些,但我更喜欢其他解决方案)你说得不太对。在composer安装
或更新
期间,只会询问那些参数,它们存储在parameters.yml.dist
中。但我的解决方案建议将它们放在config.yml
中,在这种情况下,composer不会问它们true,现在你的答案对我来说是有效的。谢谢!
apiclient:
class: My\Class
arguments:
apikey: "%mytest.key%"