在twig模板中显示包含HTML的字符串

时间:2011-12-02 10:45:00

标签: php html symfony twig

如何在树枝模板中显示包含HTML标记的字符串?

我的PHP变量包含此html和文本:

$word = '<b> a word </b>';

当我在我的树枝模板中执行此操作时:

{{ word }}

我明白了:

&lt;b&gt; a word &lt;b&gt;

我想改为:

<b> a word </b>

是否可以轻松搞定?

4 个答案:

答案 0 :(得分:319)

使用原始关键字http://twig.sensiolabs.org/doc/api.html#escaper-extension

{{ word | raw }}

答案 1 :(得分:68)

您也可以使用:

{{ word|striptags('<b>')|raw }}

以便只允许使用<b>标记。

答案 2 :(得分:26)

{{ word|striptags('<b>,<a>,<pre>')|raw }}

如果你想允许多个标签

答案 3 :(得分:1)

如果不需要变量,则可以在
中定义文本 translations / messages.en.yaml
CiteExampleHtmlCode: "<b> my static text </b>"

然后与树枝一起使用:
templates / about / index.html.twig
… {{ 'CiteExampleHtmlCode' }}
或者如果您需要像我这样的多国语言:
… {{ 'CiteExampleHtmlCode' | trans }}

让我们来看看https://symfony.com/doc/current/translation.html,以获取有关翻译使用的更多信息。