2

我在一个 symfony 应用程序中工作,我需要在 php 中使用像 addlashes 函数这样的函数,但我在 twig 中找不到任何这样的想法?有没有办法做到这一点

4

2 回答 2

5

您可以通过执行以下操作将 PHP 的addslashes函数注册为 Twig 过滤器:

$twig = new Twig_Environment($loader);
$twig->addFilter(new Twig_SimpleFilter('addslashes', 'addslashes'));

然后在你的树枝模板中使用它{{ var|addslashes }}

如果启用了自动转义,那么您的过滤器将在调用后被转义。如果自动转义给您带来问题,请查看下面的“自动转义”链接,了解如何禁用它。不用说 - 但是,如果您禁用自动转义,那么您有责任在数据输出之前对其进行清理。

资源:

  1. http://twig.sensiolabs.org/doc/advanced.html#automatic-escaping
  2. http://twig.sensiolabs.org/doc/advanced.html#filters
于 2013-06-18T05:37:50.900 回答
4

这是答案

如果您尝试在 HTML 代码中添加斜线,请尝试

 {{ my_variable|e('html') }}

如果您尝试在 JS 代码中添加斜线,请尝试

 {{ my_variable|e('js') }}

如果答案对您有用,请投票给答案。

于 2017-12-30T07:13:27.753 回答