symfony2:如何在翻译中包含换行符/换行符?

时间:2014-07-05 17:14:46

标签: symfony internationalization twig yaml

我的symfony 2.4环境中存在大量问题,在我的翻译中使用换行符

我试过了两个:

#messages.de.yml
foo: |
    Hello i am a line
    Hello i am a new line

#messages.de.yml
foo: >
    Hello i am a line
    Hello i am a new line

树枝

#template.html.twig
{{ 'foo'|trans }}

翻译工作正常,但换行没有。

也许我错了,但我想我完全按照文件说的做了。

3 个答案:

答案 0 :(得分:14)

Twig不会自动将换行符转换为<br />

使用 nl2br 过滤器。

#template.html.twig
{{ 'foo'|trans|nl2br }}

我不太确定,但最终您必须在附加地添加\n到翻译字符串。

#messages.<locale>.yml
foo: >
    Hello i am a line \n
    Hello i am a new line

答案 1 :(得分:6)

在您的YAML文件中使用:

foo: |
    first line
    second line

并在您的TWIG文件中:

<p>{{ 'foo'|trans|nl2br }}</p>

测试:

  • Symfony版本2.6.6
  • twig / twig 1.x-dev 6792014

答案 2 :(得分:1)

对我来说,以下版本可以解决这个问题:

foo: "| Hello \n this is a new line"