牛骨文教育服务平台(让学习变的简单)
博文笔记

thinkphp循环输出

创建时间:2016-11-29 投稿人: 浏览次数:365

在thinkphp里支持两种循环输出

第一种是volist,第二种是foreach标签

第一种方式输出的过程:

在控制器里先对模板赋值:

$User = M("User");

$list = $User->limit(10)->select();

$this ->assign("list",$list);

//list是一个二维数组

在模板定义循环

<volist name="list" id="vo">//name属性的值就是在控制器里定义的键;id表示当前循环的变量

        {$vo.id}:{$vo.name}<br/>

</volist>

<volist name="list" id="vo" offset="5" length="10">//offset的意思是从第五条数据开始输出10条记录,就是第5~15条记录

{$vo.name}

</volist>

<volist name="list" id="vo" mod="2">//mod表示要显示两条数据

<eq name="mod" value="1">{$vo.name}</eq>输出偶数记录value=1表示输出第2条数据

</volist>

<volist name="list" id="vo" mod="5">//显示五条数据

<eq name="mod" value="4"><br></eq>//第五条记录换行

</volist>

在控制器写

$this->assign("empty","<span class="empty">没有数据</span>");

$this->assign("list",$list);

<volist name="list" id="vo" empty="$empty">//作用就是当数据为空的时候输出

{$vo.id}:{$vo.name}

</volist>

第二种循环foreach更加简单没有过多的额外属性

<foreach name="list" item="vo">//name表示数据源item表示循环变量

{$vo.id}:{$vo.name}

</foreach>

如果是一维数组怎么办

<foreach name="list" item="vo">

{$key}|{$vo}//输出一个一维数组

</foreach>


声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。