我目前正在开发一个关于Symfony 2.8的网站项目。 但我有一个问题:我想显示来自JSON对象的信息。但是,为了做我想做的事,我需要做三个嵌套的for循环。
所以这是我的代码块:
我想浏览的数组:
element stdClass Object =>
(
[partschemes] => Array
(
[0] => ( [id] => 1 )
)
[decodedPartitions] => Array
(
[0] => stdClass Object
(
[partitions] => Array
(
[0] => stdClass Object
(
[name] => WINDOWS
[type] => primary
[size] => -
[filesystem] => fat32
)
[1] => stdClass Object
(
[name] => DATA*
[type] => primary
[size] => 256 Mo
[filesystem] => fat32
)
)
)
)
)
我的树枝模板:
{% for i, disk in element.decodedPartitions %}
<tr>
<th class="text-center" rowspan="3" width="10%">
<a href="{{ app.request.baseUrl }}/partscheme/details/{{ element.partschemes[i].id }}" class="btn btn-info" title="{{ 'button.details' | trans }}">Disk {{ i }}</a>
</th>
</tr>
{% for j, part in disk.partitions %}
<tr>
<th class="text-center" width="10%">Partition {{ j }}</th>
<td>
{% for k, partInfo in part %}
{{ k }}: {{ partInfo }}<br>
{% endfor %}
</td>
</tr>
{% endfor %}
{% endfor %}
结果,生成的页面向我显示,没有不同分区的信息:
---------------------------------
| Partition 0 | |
Disk 1 |-------------|----------|
| Partition 1 | |
---------------------------------
答案 0 :(得分:0)
感谢Miro,我能够遍历我的JSON对象。
原因是无法直接在Twig中迭代stdClass对象。所以我在控制器的json_decode
使用中添加了一个参数。
将JSON转换为stdClass对象:json_decode($json)
将JSON转换为关联数组:json_decode($json, true)
有关json_decode
的更多信息。