ThinkPHP实现二级循环读取的方法

本文实例讲述了ThinkPHP实现二级循环读取的方法。分享给大家供大家参考。具体实现方法如下:

代码如下:

$Category = D('Category')->where('category_pid=0')->findAll();
//dump($Category); 
if(!empty($Category)){ //判断一级是否为空
foreach($Category as $key=>$value){   //循环读取
$pid =  $value['category_id'];//字段赋值
$Category[$key]['child'] = D('Category')->where("category_pid =$pid")->select();
//echo D('Category')->getLastSql(); //打印sql语句的写法
}
}
//dump($Category);
$this->assign('Category',$Category);//映射值

希望本文所述对大家的ThinkPHP框架程序设计有所帮助。

(0)

相关推荐

  • thinkphp普通查询与表达式查询实例分析

    本文实例讲述了thinkphp普通查询与表达式查询.分享给大家供大家参考.具体分析如下: 一.普通查询方式 a.字符串方式: 复制代码 代码如下: $arr=$m->where("sex=0 and username='gege'")->find();//字符串需要加引号 b.数组方式: 复制代码 代码如下: $data['sex']=0;  $data['username']='gege';  $arr=$m->where($data)->find();//传

  • ThinkPHP模板中数组循环实例

    本文实例讲述了ThinkPHP模板中数组循环的实现方法.分享给大家供大家参考.具体实现方法如下: ThinkPHP开发过程中经常用到输出数组在模板中使用,一般select出来的数据都是二维数组,我们在模板中用volist标签就可以输出,今天开发遇到了这样一个问题:如果是二维数组,如何在模板中输出呢?经过查看开发手册,问题得到解决,分享一下,比如这样的一维数组: 复制代码 代码如下: array(2) { [2] => string(12) "www.jb51.net博文配图" [

  • Thinkphp的volist标签嵌套循环使用教程

    本文较为详细的对ThinkPHP的volist标签嵌套的用法阐述如下: 首先,在Thinkphp开发手册中,有关于<volist>标签嵌套的解释说明.如下: 标签嵌套: 模板引擎支持标签的多层嵌套功能,可以对标签库的标签指定可以嵌套. 系统内置的标签中,volist(及其别名iterate).switch.if.elseif.else.foreach.compare(包括所有的比较标签).(not)present.(not)empty.(not)defined等标签都可以嵌套使用.例如: &l

  • Thinkphp中数据按分类嵌套循环实现方法

    本文实例讲述了Thinkphp中数据按分类嵌套循环实现方法.分享给大家供大家参考.具体实现方法如下: 做thinkphp时要用到循环里面嵌套循环的,并第二个循环是和外面的有关联的. thinkphp官网给出的文档为: 复制代码 代码如下: <volist name="list" id="vo">      <volist name="vo['sub']" id="sub">          {$sub

  • thinkphp模板输出技巧汇总

    本文实例总结了thinkphp模板输出技巧.分享给大家供大家参考.具体总结如下: 一.变量输出(重点) 1.标量输出: 复制代码 代码如下: {$name} 2.数组输出 复制代码 代码如下: {$name[0]}  {$name['k2']}  {$name.k1} 3.对象输出 复制代码 代码如下: {$name:k}//调用这个对象的成员属性K  {$name->k}//传统调用K方法 二.系统变量 复制代码 代码如下: {$Think.get.id}//在模板中调用系统变量,得到提供的i

  • thinkphp循环结构用法实例

    本文实例讲述了thinkphp循环结构用法.分享给大家供大家参考.具体实现方法如下: 循环结构,在循环输出中变量不用加$符号 实例1.for 复制代码 代码如下: <table border='1' width='500'>      <for start='0' end='10' name='j' step='-2' comparison='gt'>//lt正序step是步调值加2 / gt倒序输出step是步调值减2          <tr><td>{

  • ThinkPHP之foreach标签使用概述

    ThinkPHP模板的foreach标签用于在模板中循环输出数据集或者对对象进行遍历输出. 相对于volist标签而言,foreach标签没有volist标签那么多的功能,却可以对对象进行遍历输出,而volist标签通常是用于输出数组. foreach标签用法如下: <foreach name="list" item="vo"> 用 户 名:{$vo.username}<br /> 电子邮件:{$vo.email}<br /> 注

  • thinkphp模板赋值与替换实例简述

    本文实例讲述了thinkphp模板赋值与替换方法.分享给大家供大家参考.具体实现方法如下: 1. 模板中的赋值方法: 复制代码 代码如下: $this->assign('name','我们');//第一种赋值方法  $this->name='jb51';//第二种动态赋值方法  $this->display(); 2. 模板替换方法: PUBLIC__:会被替换成当前网站的公共目录,通常是 /thinkphp/Public/;在Public中建立Css文件夹,建立basic.css文件

  • ThinkPHP采用<volist>实现三级循环代码实例

    本文以实例描述了ThinkPHP采用<volist>标签实现三级循环代码,具体操作步骤如下: 1. 三级循环需要三维数组,实现代码如下: function MakeTree($pid,$level) { $map['pid'] = $pid; $map['level'] = $level; $result = $this->where($map)->order('rank ASC')->findall(); if($result){ foreach ($result as $

  • thinkphp特殊标签用法概述

    本文实例讲述了ThinkPHP特殊标签用法.分享给大家供大家参考.具体分析如下: 特殊标签: 1.比较标签 eq或者 equal 等于 neq 或者notequal 不等于 gt 大于 egt 大于等于 lt 小于 elt 小于等于 heq 恒等于 nheq 不恒等于 2.范围标签 in 复制代码 代码如下: <in name='n' value='9,10,11,12'>在这些数字里面<else/>不在这些数字的范围内</in> <notin name='n'

  • ThinkPHP模板中判断volist循环的最后一条记录的验证方法

    对于用过smarty做过php开发的朋友来说,应该都知道在smarty模板里面判断foreach循环是否是最后一个可以用$smarty.foreach.name.last来判断循环是否到了最后一条记录,在thinkphp的模板中常见的循环是volist,但是volist的各种属性中并没有直接判断最后一条记录的属性,那么在thinkphp中如何判断呢?下面的代码可以实现ThinkPHP中volist断最后一条记录. 举例代码如下,读者可以自己去体会. <volist name='lists' id

随机推荐