3

我正在使用 twig 并希望停止特定(不是全部)html 标签(如锚标签)的自动转义。有没有办法做到这一点。我的代码有点像 {{ content|nl2br}} 内容包含锚标签。由于 raw 停止所有标签的自动转义,我不能使用它。任何人都可以为此提出任何解决方案。

4

1 回答 1

2

您可以像这样使用内置的 striptags 过滤器:

{{ "this <a>is my</a> <b>html<b> string"|striptags('<a>')|raw }}

<a>标签将保留,但任何其他标签都将被删除。额外的 |raw 过滤器将确保不会转义<a>标签。

请注意,如果您的字符串可能包含其他不安全的 HTML 字符(如 < 或 >),这仍然可能导致输出问题。如果您的数据被认为是安全的,那么这将起作用,否则您可能必须构建自己的过滤器,这并不难。

于 2012-11-27T13:13:28.040 回答