zoukankan      html  css  js  c++  java
  • 夺命雷公狗---Smarty NO:10 foreach数组的遍历

    功能:主要实现对数组的遍历输出

    基本语法:

    foreach,foreachelse

    {foreach from=数组 key=键 name=名称 item=内容 }

    {foreachelse}

    {/foreach}

    from:要遍历输出的数组

    item:每次遍历时,系统会自动将遍历的结果放入item内容中

    key:键值,每次遍历时,系统会将遍历的键值放入key中

    name:foreach名称,为foreach起名

    foreachelse:当数组为空时,执行此句

    demo4.html示例代码

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset=’utf-8′>
    <title></title>
    </head>
    <body>
    {*一维数组*}
    {foreach from=$lamp item=’val’}
    {$val}<hr/>
    {/foreach}
    {*二维数组*}
    {foreach from=$persons item=’row’}
    {$row[‘name’]}–{$row[‘age’]}–{$row[‘sex’]}
    <hr/>
    {/foreach}
    {*其他参数的使用*}
    {foreach from=$lamp item=’val’ key=’k’}
    {$k}:{$val}<hr/>
    {/foreach}
    {*附加属性*}
    {foreach from=$persons item=’row’ name=’ps’}
    {$smarty.foreach.ps.index}:{$smarty.foreach.ps.iteration}:{$row@index}:{$row@iteration}
    {$row[‘name’]}-{$row[‘age’]}-{$row[‘sex’]}<HR/>
    {/foreach}
    单前总共有{$smarty.foreach.ps.total}条记录
    </body>
    </html>

    demo4.php代码示例

    <?php
    require “smarty/Smarty.class.php”;
    $smarty = new Smarty();
    $lamp = array(‘php’,’mysql’,’apache’,’linux’);
    $persons = array(
    array(‘name’=>’lisi’,’age’=>’22’,’sex’=>’nan’),
    array(‘name’=>’zhangsam’,’age’=>’33’,’sex’=>’nv’),
    array(‘name’=>’wangwu’,’age’=>’44’,’sex’=>’yao’),
    array(‘name’=>’jj’,’age’=>’16’,’sex’=>’nan’)
    );
    $smarty -> assign(‘lamp’,$lamp);
    $smarty -> assign(‘persons’,$persons);
    $smarty -> display(“demo4.html”);

    例4:foreach附加属性

    $smarty.foreach.name.index      @index :循环索引(默认从0开始)

    $smarty.foreach.name.iteration   @iteration :循环迭代(当前是第几次循环)

    $smarty.foreach.name.first       @first :当第一次循环时,此值为true

    $smarty.foreach.name.last       @last :当最后一次循环时,此值为true

    $smarty.foreach.name.total       @total :统计当前循环次数

    {*附加属性*}
    {foreach from=$persons item=’row’ name=’ps’}
    {$smarty.foreach.ps.index}:{$smarty.foreach.ps.iteration}:{$row@index}:{$row@iteration}
    {$row[‘name’]}-{$row[‘age’]}-{$row[‘sex’]}<HR/>
    {/foreach}
    单前总共有{$smarty.foreach.ps.total}条记录

    示例代码:

  • 相关阅读:
    微前端开发常见问题汇总
    什么是UUId?理解UUId的五个版本和使用
    前端实现.md文件转换成.html文件
    使用HTML5 SVG 标签
    小程序开发中遇到的问题
    Django REST framework+Vue 打造生鲜超市(十一)
    Django REST framework+Vue 打造生鲜超市(十)
    Django REST framework+Vue 打造生鲜超市(九)
    Django REST framework+Vue 打造生鲜超市(八)
    Django REST framework+Vue 打造生鲜超市(七)
  • 原文地址:https://www.cnblogs.com/leigood/p/5033283.html
Copyright © 2011-2022 走看看