smarty in循环中的动态变量

时间:2014-05-29 12:52:19

标签: smarty

如何在smarty中生成动态变量名?

我尝试使用{$item.schedule.d{$i}} 生成类似{$item.schedule.d1}, {$item.schedule.d2}, ...

的内容

1 个答案:

答案 0 :(得分:1)

你可以这样做:

在PHP中:

$items = array();
$items['schedule']['d1'] = 'D1';
$items['schedule']['d2'] = 'D2';
$items['schedule']['d3'] = 'D3';
$smarty->assign('items',$items);
$smarty->display('index.tpl');

在index.tpl中:

{$data = [1,2,3]}

{foreach $data as $value}
    {$items.schedule["d{$value}"]}<br />
{/foreach}

因此,在您的情况下,您应该使用{$item.schedule["d{$i}"]}语法