联系我们

为客户提供超预期的高品质网站设计!

ThinkPHP 多表循环遍历输出

2019-3-7 0:00:00

在做项目的时候,经常会遇到分类树输出,有可能是多级,有可能是两级,用得较多的应该是两级菜单树了,比如后台的菜单管理,最近做的一个项目是两个表需要循环出来,一个是分类的,另一个是子分类内容,然后这两个分类要整合到一起做成一个菜单树,然后在另外一个页面进行调用存储。

我的天,逻辑好麻烦,好了,先上代码:

ThinkPHP双重循环遍历输出

数据表1 Cat 栏目

数据表2 In 文章

  1. $cat= D("Cat");  

  2. $in = D("In");  

  3. $total = $cat -> select();  

  4. foreach($total as $k => $v){   

  5. $total[$k]['new'] =$in -> where(array('cat_title' => $v['cat_title'])) -> limit(10) -> select();   

  6. }//xiariboke.com  

  7. $this -> assign('total',$total); 


view页面:

  1. <volist name="total" id="v">  

  2.                 <dl class="noMr">  

  3.                     <dt class="comBg senseTle">  

  4.                     <a href="__APP__/part/{$v.cat_id}/" title="{$v.cat_title}" target="_blank">{$v.cat_title}</a>  

  5.                     </dt>  

  6.                     <volist name="v['new']" id="vo">  <!--<volist name="v.new" id="vo"> 的写法也行 -->

  7.                         <dd>  

  8.                             <a class="txtellipsis"   

  9. href="__APP__/spart/{$vo.in_id}.html" target="_blank"   

  10. title="{$vo.in_title}">{$vo.in_title}</a>  

  11.                             <span>{$vo.in_tm}</span>  

  12.                         </dd>  

  13.                     </volist>   

  14.                 </dl>  

  15.             </volist>  

好了,如果是需要在 menu 下拉框提取的话,就把html去掉就OK了,当然,如果是菜单树的话,还需要更改太多的内容,看自己的需求了,总之,完善一下 tp 还是比较简单的。





上一条新闻:thinkphp volist标签中加if判断的写法
下一条新闻:IOS微信分享朋友圈成功后,不进入回调SUCCESS

 

4009-606-208 54057491 info@