例如,在模板中是这样的:<{section name="lp" loop="$loop"}>
    <{$loop[lp].username}>
    <{$smarty.section.lp.index}>
<{/section}>我想在这个循环体中,搞一个变量,并且$smarty.section.lp.index是这个变量的一部分。
比如这个变量可能叫<{a_0}>,当然这个变量中的0我想替换成smarty.section.lp.index如果可以的话,那么如果这个循环体循环十次,就有十个变量<{a_0}><{a_1}><{a_2}>............<{a_9}>不知道能不能这样做?谢谢

解决方案 »

  1.   

    <{section name="lp" loop="$loop"}>
      <{assign var=a_0 value=$smarty.section.lp.index}>
      <{$loop[lp].username}>
      <{$a_0}>
    <{/section}>
      

  2.   

    只是想输出这个值吗? a_<{$smarty.section.lp.index}> 放在section循环里面
      

  3.   

    这段代码直接就输出来了0 1 2。我希望是组合成变量,这个变量的值由php来assign。如果不指定,就不会显示出来。北极熊,不是输出值,是组建一个变量,变量的值由php来指定。
    比如我在模板中单独写个变量<{$abcdefg}>,如果PHP不assign这个变量的值,那么前台什么也不显示,如果我在php中这样写  $tpl->assign('abcdefg','hello'),那么在前台会显示hello。
      

  4.   

    $Smarty->assign('data',array('a_0' => 10,'a_1' => 11,'a_2' => 12,'a_3' => 13,'a_4' => 14));<{section name="lp" loop="$loop"}>
    <{assign var=$n value='a_'|cat:$smarty.section.lp.index}>
    <{$loop[lp].username}>
    <{$data[$n]}>
    <{/section}>是这个意思吗?