我正在使用Twig显示在我的数据库中检索到的一些变量:
<p>{{ my_variable }}</p>
事情是这个变量可能包含html标签,例如“<br />
”。
Twig似乎在显示变量时会自动调用类似htmlentities的函数。
有没有办法禁用它,以便当我显示包含“Hello<br />world !
”的变量时,我得到:
Hello
world !
而不是:
Hello<br />world !
由于
答案 0 :(得分:21)
使用{{ my_variable|raw }}
阻止my_variable
自动转义。
答案 1 :(得分:2)
尝试使用此
{% autoescape false %}{{ my_variable}}{% endautoescape %}
答案 2 :(得分:1)
甚至更好:{{ '<br />|raw('html') }}
以避免妨碍其他合理的事情。
答案 3 :(得分:0)
如果您只想在数据库中存储的文本中使用换行符,但不小心使用html,则还可以使用{{ var|nl2br }}
中的nl2br过滤器。允许您在文本中使用字符串换行符\n
。过滤将其转换为<br/>