我想在Smarty中将此数组加载为表格。
阵列:
Array
(
[0] => Array
(
[name] => VS1
[price] => 350
[ram] => 256
[cpu] => 2267
[hdd] => 5
[traff] => 0
[os] => Linux
[country] => Russia
)
[1] => Array
(
[name] => VS2
[price] => 465
[ram] => 512
[cpu] => 2267
[hdd] => 5
[traff] => 0
[os] => Linux
[country] => Russia
)
)
在源代码中,我想要这个
<tr>
<td>VS1</td>
<td>350</td>
<td>256</td>
<td>2267</td>
<td>5</td>
<td>0</td>
<td>Linux</td>
<td>Russia</td>
</tr>
<tr>
<td>VS2</td>
<td>465</td>
<td>512</td>
<td>2267</td>
<td>5</td>
<td>0</td>
<td>Linux</td>
<td>Russia</td>
</tr>
这可能吗?我正在尝试foreach周期,但没有结果。 你能给我一份有效的Smarty代码吗?
答案 0 :(得分:10)
foreach总是为我工作。让我们假设,$smarty
是您已经初始化且工作灵巧的3实例,$arr
是您的数组。
你需要在php中将数组分配给smarty:
$smarty->assign('arr', $arr);
然后你在模板中使用foreach遍历它:
{foreach $arr as $item}
<tr>
<td>{$item.name}</td>
<td>{$item.price}</td>
<td>{$item.ram}</td>
....
</tr>
{/foreach}
答案 1 :(得分:2)
这应该可以解决问题;)
{foreach from=$myArr item="row"}
<tr>
{foreach from=$row item="col"}
<td>{$col}</td>
{/foreach}
</tr>
{/foreach}
答案 2 :(得分:1)
{foreach from=$myArray item=foo}
<li>{$foo}</li>
{/foreach}
{foreach $arr as $item}
{/foreach}
注意另一种写作方式......检查你的Smarty版本是否正确。