Twig UTF8字符编码 - Symfony2

LBr*_*dge 12 html utf-8 twig

我正在为Symfony2开发一个法国协会网站的新闻系统.在显示重音和HTML时,我遇到了麻烦.

在twig视图中,我只输出变量:

{{ article.body }}
Run Code Online (Sandbox Code Playgroud)

如果我将重音直接插入数据库中,如下所示:'é',甚至不显示变量.

如果我插入它:é它保持不变.

HTML显示为文本.

我也试过这个autoescape函数(设置为truefalse),没有成功:

{% autoescape true %}
    {{ article.body }}
{% endautoescape %}
Run Code Online (Sandbox Code Playgroud)

有什么建议?非常感谢

oli*_*007 11

首先,您需要在HTML代码中设置charset

<!-- for HTML5 -->
<meta charset="UTF-8" />
Run Code Online (Sandbox Code Playgroud)

第二个"convert_encoding()"是一个将变量转换为其他编码的twig函数.

{{ article.body | convert_encoding('UTF-8', 'ISO-8859-1') }}
Run Code Online (Sandbox Code Playgroud)

但也许,您需要在转换变量之前使用raw

{{ article.body | raw | convert_encoding('UTF-8', 'ISO-8859-1') }}
Run Code Online (Sandbox Code Playgroud)

http://twig.sensiolabs.org/doc/filters/convert_encoding.html


小智 0

尝试将 twig 文件和控制器转换为 UTF-8!类似的问题在这里(当将变量从控制器传递到树枝时),这解决了问题。

  • 您的“此处”和“此”链接丢失 (3认同)