====== 02 twig自動エスケープ(autoescape) ======
twigではクロスサイトスクリプト防止の為、自動エスケープがデフォルトで有効になっています。
===== 1.twig側で設定する場合 =====
「autoescape false」で囲んであげると、autoescapeを無効にできます。
{% autoescape false %}
{{ vm.memo|escape|replace({'\n':'
'}) }}
{% endautoescape %}
===== 2.コントローラ側で設定する場合 =====
registerの時に「'autoescape' => false」としてあげるとautoescapeを無効にできます。
// autoescapeを無効にする。
$app->register(new Silex\Provider\TwigServiceProvider(), array(
'twig.path' => __DIR__ . '/views',
'twig.options' => array(
'autoescape' => false,
),
));
===== 編集表示の時に指定 =====
下記のようにe(escape)でエスケープ
raw でそのまま表示
を指定もできる。
{% html = "↑" %}
{{html|e}}
{{html|raw}}
{{tag>twig}}