Array
(
[page_title] => Slovak RS
[page_footer] => © Copyright 2017
[is_published] => published
[menu] => {
"id":"1",
"name": "main_menu",
"items": [
"pos1": [
"display_name" : "Informácie",
"path" : "informacie"
],
"pos2": [
"display_name" : "Videá",
"path" : "video"
],
"pos4": [
"display_name" : "Recepty",
"path" : "recepty"
],
"pos5": [
"display_name" : "Galéria",
"path" : "galeria"
],
"pos6": [
"display_name" : "Osobnosti",
"path" : "osobnosti"
],
],
"updated_at": "2020"
}
)
这是我进入twig模板文件的数据。我希望将单个db表中的菜单存储为json。我可以显示像{{ menu }}, {{ page_title }}
这样的项目,但很难在json部分循环
这是我试过的
{% for item in menu %}
{{ item.id }}
{{ item['id'] }}
{% endfor %}
{% for key,value in menu %}
Key : {{ key }}
Value : {{ value }}
{% endfor %}
我正在使用twig 2.x而且我是新手
答案 0 :(得分:1)
在您将JSON传递给twig之前,您应首先json_decode使用JSON。有了这个,你有一个数组或对象,你可以循环。
$objJson = json_decode($yourDBArray['menu']);
$arrJson = json_decode($yourDBArray['menu'],true);
在您提供的代码中,JSON是string
而不是array
,也不是object
。