0

我以前没有使用过 Twig,现在出现了一个问题,我需要跳过 twig 中的整行,因为它是

我的html是

<h4 class="title">{{ 'publish' | translate }}</h4>

在我的索引中

require_once('lib/Twig/Autoloader.php');
Twig_Autoloader::register();

$loader = new Twig_Loader_Filesystem('views');

$twig = new Twig_Environment($loader, array(
    //'cache' => 'cache',
    'auto_reload' => true
));

当我渲染 html 时,由于翻译而出现 Twig 错误。我需要建议如何告诉 twig 跳过这些行,因为它不会更改我的 html 中的任何符号(可能带有标签“翻译”)

4

2 回答 2

2

添加假过滤器translate

$twig->addFilter(new Twig_SimpleFilter('translate', function($v) {return $v;}));
于 2016-01-28T12:22:33.107 回答
0

一般来说,如果你想在来自 symfony 控制器或 php 的 twig 中保留 html 标签,你可以使用 twig 过滤器,如 raw 或 escape:

<h4 class="title">{{ variable|raw }}</h4>或者<h4 class="title">{{ variable|escape }}</h4>.

你也有自动转义标签

{% autoescape 'html' %}

你把你的代码包含 html{% endautoescape %}

确保这些过滤器或标签会引发安全问题。

于 2018-06-07T09:50:58.227 回答