1

我想翻译整个 html 页面(文本和一些标记),包括<p>,<italic>, <strong>Symfony2 中的标签。对于我使用的简单短语,{{ 'read.first'|trans }}但这不接受 html 标签,如<p>. 我怎么做 ?

4

1 回答 1

0

你不应该用 symfony 的 Translation 组件翻译完整的页面,这意味着只是短字符串。

Twig 总是在字符串中转义标签,您可以在翻译文档中阅读如何为您的翻译禁用此功能:

使用翻译标签或过滤器具有相同的效果,但有一个细微的区别:自动输出转义仅适用于使用过滤器翻译的变量。换句话说,如果你需要确保你的翻译变量没有被转义输出,你必须在翻译过滤器之后应用原始过滤器:

{# text translated between tags is never escaped #}
{% trans %}
    <h3>foo</h3>
{% endtrans %}

{% set message = '<h3>foo</h3>' %}

{# a variable translated via a filter is escaped by default #}
{{ message|trans|raw }}

{# but static strings are never escaped #}
{{ '<h3>foo</h3>'|trans }}
于 2013-01-10T21:51:32.567 回答