我有一个像这样的阵列设置;我似乎无法用树枝循环遍历这些值:
array (size=1)
'hash' =>
array (size=7)
0 =>
array (size=4)
'key1' => "val"
'key2' => "val"
'key3' => "val"
'key4' => "val"
1 =>
array (size=4)
'key1' => "val"
'key2' => "val"
'key3' => "val"
'key4' => "val"
...
我正在使用的模板代码(在第n次迭代中):
{% for i in hash %}
{% for j in i %}
<td>{{ j.key1 }}</td>
<td>{{ j.key2 }}</td>
<td>{{ j.key3 }}</td>
<td>{{ j.key4 }}</td>
{% endfor %}
{% endfor %}
我上面的twig模板代码一直出现Array to string conversion
错误。
答案 0 :(得分:8)
在vijay4vijju的帮助下以及他对dump
的引用,我能够遍历数组。
只需要一个循环:
{% for key,val in hash %}
<tr>
<td>{{ val.key1 }}</td>
<td>{{ val.key2 }}</td>
<td>{{ val.key3 }}</td>
<td>{{ val.key4 }}</td>
</tr>
{% endfor %}
我会选择他的答案但技术上不是答案,转储只是对dump
手册的引用。
要在我使用的树枝中启用调试:
$twig = new Twig_Environment($loader, array(
'debug' => true,
));
$twig->addExtension(new Twig_Extension_Debug());
要解决此问题,我使用了:
{% for key,val in hash %}
<pre>{{ dump(val) }}</pre>
<tr>
<td>{{ val.key1 }}</td>
<td>{{ val.key2 }}</td>
<td>{{ val.key3 }}</td>
<td>{{ val.key4 }}</td>
</tr>
{% endfor %}
答案 1 :(得分:2)
试试这个。我不确定
{% for key,value in hash %}
{% for key1,value1 in value %}
Value1 : {{ dump(value1) }}
{% for key2,value2 in value1 %}
Value1 : {{ value2 }}
{% endfor %}
{% endfor %}
{% endfor %}
dump将打印数组中的数据:
参考dump
答案 2 :(得分:0)
我用它在树枝上打印多维数组,希望它能起作用。
{% for item in hash %}
{% for firstLevelItem in item %}
<ul>
<li>{{ firstLevelItem.comments }}</li>
</ul>
{% endfor %}
{% endfor %}