首页 > 解决方案 > 使用 twig 在 Symfony 中处理可变 JSON 数据的最佳方法是什么?

问题描述

对于一个项目,我需要在网站上显示特定 PHP 调用的 JSON 结果。为此,html.twig已经设置了一个包含相应页面的 Symfony 项目。

我想自动开始将 JSON 对象转换为 PHP 对象,以便我可以使用它们来实现输出表单。我没有想到并遇到的是,在用于将 PHP 变量复制到html.twig页面以便在那里可以使用的渲染函数中,无法处理对象。只有字符串和字符串数组。(如果我错了请纠正我)

在此之后,我想在 Javascript 中做同样的事情,但是 Twig 不适用于 Javascript ......

将可变 JSON 数据转换为 HTML 页面的好方法是什么?我不喜欢使用 Javascript,因为 JSON 数据中包含有信心的信息。

MyController.php

public function handleJSON(): Response
{
   return $this->render('output.html.twig', [ 'variable1' => 'value', 'variable2' => 'value2' ]);
}

输出.html.twig

<div> Variable 1 </div>
<p>{{ variable1 }}</p>
<div> Variable 2 </div>
<p>{{ variable2 }}</p>

标签: javascriptphphtmlsymfonytwig

解决方案


你冷使用 JSON_PRETTY_PRINT:

<pre>{{ article|json_encode(constant('JSON_PRETTY_PRINT')) }}</pre>

推荐阅读