我正在为我的网站使用smarty,而我正在尝试遍历数组以打印出表格行...
数组如下所示:
Array
(
[TM98800G] => Array
(
[zid] => Array
(
[0] => 90001
[1] => 90002
[2] => 90003
[3] => 90004
[4] => 90005
)
[count] => Array
(
[0] => 10
[1] => 10
[2] => 20
[3] => 25
[4] => 15
)
)
[TM76654G] => Array
(
[zid] => Array
(
[0] => 90301
[1] => 90302
[2] => 90303
[3] => 90304
[4] => 90305
)
[count] => Array
(
[0] => 25
[1] => 25
[2] => 20
[3] => 35
[4] => 45
)
)
)
我正在尝试遍历这个并打印出表格:
<h5>TM98800G </h5>
<table>
<tr>
<td>90001</td>
<td>10</td>
</tr>
<tr>
<td>90002</td>
<td>10</td>
</tr>
<tr>
<td>90003</td>
<td>20</td>
</tr>
<tr>
<td>90004</td>
<td>25</td>
</tr>
<tr>
<td>90005</td>
<td>15</td>
</tr>
</table>
<h5>TM76654G</h5>
<table>
<tr>
<td>90301</td>
<td>25</td>
</tr>
<tr>
<td>90302</td>
<td>25</td>
</tr>
<tr>
<td>90303</td>
<td>20</td>
</tr>
<tr>
<td>90304</td>
<td>35</td>
</tr>
<tr>
<td>90305</td>
<td>45</td>
</tr>
</table>
我尝试了嵌套的foreach语句并使用了各个部分,但我无法弄清楚如何正确地循环它...
答案 0 :(得分:6)
{foreach from=$array key=header item=table}
<h5>{$header}</h5>
<table>
{foreach from=$table.zid key=k item=zid}
<tr>
<td>{$zid}</td>
<td>{$table.count.$k}</td>
</tr>
{/foreach}
</table>
{/foreach}
我认为应该这样做。
答案 1 :(得分:-3)
foreach($array as $heading => $attrs) {
echo "<h5>" . $heading . "</h5>";
echo "<table>";
for($i=0; $i < count($attrs['zid']); $i++) { // will work as long
// as zid and count will
// always be the same size
echo "<tr>";
echo "<td>" . $attrs['zid'][$i] . "</td>";
echo "<td>" . $attrs['count'][$i] . "</td>";
echo "</tr>";
}
echo "</table>";
}