Twig用实体

时间:2016-02-22 09:37:22

标签: symfony twig symfony-2.3

嗯,这真的很奇怪,Twig(我在Symfony 3中使用它)用实体(例如ł)替换非ascii字符(例如“ł”),但是......仅在Javascript中部分。

我不知道为什么以及如何禁用它。

编辑:是的,我到处都有UTF-8,在Nebeans和HTML head部分。

Edit2:这是我目前的代码:

{% autoescape false %}
    <script>
        $(function(){
            alert('ółż');
        })
    </script>
{% endautoescape %}

即使使用{% autoescape false %}(正如马丁所建议的那样),它仍然会这样做。

2 个答案:

答案 0 :(得分:3)

如果caracters在变量中是正常的,那么要禁用,你可以使用:

{{myvar | raw}}

如果您需要来源:http://twig.sensiolabs.org/doc/filters/raw.html

答案 1 :(得分:1)

Twig根据上下文使用不同的自动转换策略。请参见手册http://twig.sensiolabs.org/doc/tags/autoescape.html

您可以强制Twig禁用转义:

{% autoescape false %}
    Everything will be outputted as is in this block
{% endautoescape %}

或者使用raw filter的单个打印表达式:

{{ var|raw }}

另请查看Twig 's configuration默认情况下应启用autoescaping的内容。

编辑:

也许也试试这个:

<script>
    {% autoescape false %}
        $(function(){
            alert('ółż');
        })
    {% endautoescape %}
</script>