smarty如何实现循环显示效果?
投票A
类别
选项1
选项2
类别b
选项1
选项2
类别c
选项1
选项2
选项3我以前写过一个投票的系统,现在想把它SMARTY一下,在转换代码的时候遇到了一个问题,大家看看上面的结构这是我的投票系统的编辑修改界面用一个循环嵌套echo把3个表中的关联项全部打印出来,点击每个选项就可以做相应的编辑操作,这样可以教别人有一种很好的结构感和操作感,但是我在写回SAMRTY时候发现不是很好实现我的想法,在smarty中想循环显示就要将显示的内容写成一个数组对吧,但是这种实时循环的数组要怎么写呢?希望大家给一些建议如何写成这种效果谢谢大家了!

解决方案 »

  1.   

    php里:
    $your_array = array();
    $your_array[] = array("id"    =>1
                         ,"name"  =>"hei");
    $your_array[] = array("id"    =>2
                         ,"name"  =>"guy");$smart_obj->assign('your_array',$your_array);
    在tpl文件里
    <table>
    <!-- BEGIN your_array -->
    <tr bgcolor='#FFFFFF'>
              <td align='center'>{id}</td>
              <td align='center'><b><font color='#6600FF' size='4'>{name}</font></b></td>
            </tr>
    <!-- END your_array -->
    </table>
      

  2.   

    还是数组啊,弄成二围数组不行吗
    类似这样的Array
    (
        [类别a] => Array
            (
                [选项1] => ***
                [选项2] => ***
            )    [类别b] => Array
            (
                [选项1] => ***
                [选项2] => ***
            )    [类别c] => Array
            (
                [选项1] => ***
                [选项2] => ***
                [选项3] => ***
            ))
    然后section 根据第二维数组的索引,输出各个类别里的子选项就可以了,用法参考section的嵌套输出,手册里有。
      

  3.   

    可以参考我的贴(刚结贴了):http://topic.csdn.net/u/20070929/17/99395680-d613-4e9d-b2a8-2d185b5db1d2.html?802139365