【发布时间】:2016-04-29 11:44:56
【问题描述】:
From the TWIG documentaion about json_encode() filter 他们说:
json_encode
json_encode 过滤器返回一个值的 JSON 表示:
{{ data|json_encode() }}Twig 在内部使用 PHP json_encode 函数。
参数
options:json_encode 选项的位掩码
({{data|json_encode(constant('JSON_PRETTY_PRINT')) }})
我要做的是添加多个这些选项。
我想要JSON_PRETTY_PRINT 和JSON_UNESCAPED_SLASHES
我试过了
{{ array|json_encode(constant('JSON_PRETTY_PRINT, JSON_UNESCAPED_SLASHES')) }}
{{ array|json_encode(constant('JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES')) }}
{{ array|json_encode(constant('JSON_PRETTY_PRINT', 'JSON_UNESCAPED_SLASHES')) }}
但它们都不起作用。如何组合 TWIGs json_encode() 过滤器的两个选项?
{% set array = {'xxx': "one", 'yyy': "two", 'path': "/hello/world" } %}
{% autoescape false %}
{{ array|json_encode() }}
{{ array|json_encode(constant('JSON_PRETTY_PRINT')) }}
{{ array|json_encode(constant('JSON_UNESCAPED_SLASHES')) }}
{% endautoescape %}
期望的输出应该是
{
"xxx": "one",
"yyy": "two",
"path": "/hello/world"
}
【问题讨论】: