thinkphp循环输出
在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>
- 上一篇: Java精确判断一个字符串是否有中文
- 下一篇: java 基础数据遍历(2)----二维数组查找