symfony - 延长在 Twig 中使用更换过滤器?

标签 symfony twig

我查看了documentation用于更换 Twig 中的过滤器。我的问题是,假设我有一个变量 contvariable,并且从 Controller 通过该变量传递的内容是动态的

 return $this->render('RodasysFormstudyBundle:Default:addclientname.html.twig', array('contvariable' =>$sometext));

这个$sometext变量将包含类似

的文本
$sometext='%Sun% rises in the East';

%% 内的文本应在浏览器中显示为输入字段。我在网络上没有找到任何示例,例如替换 %% 中的内容(无论内容是太阳还是月亮)。是否可以使用 replace 过滤器来做到这一点,或者我应该遵循一些其他方法,例如在将其发送到 twig 之前替换 Controller 中的内容..

请帮忙..

最佳答案

你可以做类似的事情(使用“原始”过滤器):

{{ "%foo% rises in the East"|replace({'%foo%': "<input type='text' name='"~foo~"' value='"~foo~"'/>"})|raw }}

foo 是 Controller 发送的变量,其值由您选择。

关于symfony - 延长在 Twig 中使用更换过滤器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10680075/

相关文章:

php - 多个 Twig 模板 block 的数组处理

symfony - Silex + Twig : form_widget() not found, 即使安装了 Symfony Bridge

css - 未加载 CSS 文件的更改

Symfony4 - 404 与供应商捆绑路线

twig - 如何正确使用 if not 语句与 Twig

php - 从供应商类生成 Symfony2 表单

php - 如何检查尚未自动加载的类是否存在

php - 翻译在 Symfony2 中不起作用

symfony - 如何使用Symfony控制台工具检查环境?

php - Symfony Serializer 无法在反序列化时处理 Doctrine Id