Spec-Zone.ru › Twig 1

autoescape

Включено ли автоматическое экранирование или нет, вы можете пометить часть шаблона для экранирования или нет, используя тег autoescape.

{% autoescape %}
    Everything will be automatically escaped in this block
    using the HTML strategy
{% endautoescape %}

{% autoescape 'html' %}
    Everything will be automatically escaped in this block
    using the HTML strategy
{% endautoescape %}

{% autoescape 'js' %}
    Everything will be automatically escaped in this block
    using the js escaping strategy
{% endautoescape %}

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

Примечание

Перед Twig 1.8 синтаксис был другим:

{% autoescape true %}
    Everything will be automatically escaped in this block
    using the HTML strategy
{% endautoescape %}

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

{% autoescape true js %}
    Everything will be automatically escaped in this block
    using the js escaping strategy
{% endautoescape %}

Когда автоматическое экранирование включено, по умолчанию всё экранируется, за исключением значений, явно помеченных как безопасные. Их можно пометить в шаблоне, используя фильтр raw:

{% autoescape %}
{{ safe_value|raw }}
{% endautoescape %}

Функции, возвращающие данные шаблона (такие как макросы и parent), всегда возвращают безопасную разметку.

Примечание

Twig достаточно умен, чтобы не экранировать значение, уже экранированное фильтром escape.

Примечание

Twig не экранирует статические выражения:

{% set hello = "<strong>Hello</strong>" %}
{{ hello }}
{{ "<strong>world</strong>" }}

Будет отображено «<strong>Hello</strong> world».

Примечание

В главе Twig для разработчиков содержится более подробная информация о том, когда и как применяется автоматическое экранирование.

« apply | block »

© 2009–2018 by the Twig Team
Licensed under the three clause BSD license.
The Twig logo is © 2010–2020 Symfony
https://twig.symfony.com/doc/1.x/tags/autoescape.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API