具有复杂符号的环境变量

时间:2018-07-02 14:48:31

标签: php symfony environment-variables yaml

在我拥有的参数中

some.pass: '%env(resolve:some_pass)%'

.env

some_pass=#v[b'<:)TY:-U8T>p[z&.4G@)uB$~z1N

当我打电话

$container->getParameter('some.pass')

我只是得到一个空字符串或另一种通过类型的错误。

我的猜测是因为密码中的符号。

如何在.env文件中转义字符串?

1 个答案:

答案 0 :(得分:2)

问题在于您的第一个字符#用于.env文件中的注释。

因此,当您在.env文件中进行设置

parameter=#123

,它将像空字符串""一样被解析,因为第一个字符为#,并且#之后的所有内容都将被视为注释。

#放入参数的方法是用双引号将参数值引起来。

parameter="#123"将解析为字符串#123

如果您还想在参数中添加",则可以使用\来转义字符。 parameter="#12\"3"将解析为字符串#12"3

相关问题