更新时间:2016年05月19日 11:40:37 作者:yanhui_wei
这篇文章主要介绍了thinkPHP实现递归循环栏目并按照树形结构无限极输出的方法,涉及thinkPHP数据库查询,数组遍历与字符串操作等技巧,需要的朋友可以参考下
本文实例讲述了thinkPHP实现递归循环栏目并按照树形结构无限极输出的方法。分享给大家供大家参考,具体如下:
这里使用thinkphp递归循环栏目按照树形结构无限极输出,并保存为一个数组,利于模板调用
具体代码如下:
private function categoryTree($parentid,$level)
//因为是本类中使用所以定于为私有函数
$Category= D('Category');
$result = $Category->where("`parentid`=".$parentid)->order("listorder desc,catid desc")->select();
if($result)
$count=count($result);//当前子栏目个数
$level++;//子栏目层级
foreach($result as $v)
$index++;
if($count==$index) $step="└─";
else $step="├─";
$step.=str_repeat(' ',$level-1);
$nbsp=str_repeat(' ',$level-1);
$nstr=$nbsp.$step;
if($parentid==0) $nstr='';
$v['step']=$nstr;
$newData[$v['catid']]=$v;
//echo $nstr.$v['catname']."<br />";
if($v['child']==1)//如果有子栏目
$newData=$newData+$this->categoryTree($v['catid'],$level);
return $newData;
php递归栏目保存为数组
PS:本文代码没有进行格式化美化处理,这里推荐几款本站的格式化美化工具,相信大家在以后的开发中能够用得上:
php代码在线格式化美化工具:
http://tools.jb51.net/code/phpformat
JavaScript代码美化/压缩/格式化/加密工具:
http://tools.jb51.net/code/jscompress
在线XML格式化/压缩工具:
http://tools.jb51.net/code/xmlformat
sql代码在线格式化美化工具:
http://tools.jb51.net/code/sqlcodeformat
更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《
ThinkPHP入门教程
》、《
ThinkPHP常用方法总结
》、《
smarty模板入门基础教程
》及《
PHP模板技术总结
》。
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。
您可能感兴趣的文章:
-
-
-
-
摘自织梦CMS中的图片处理类
这篇文章主要介绍了摘自织梦CMS中的图片处理类,通过面向对象的方式较为详细的实现了php针对图片的缩略图生成及水印添加等操作技巧,非常具有实用价值,需要的朋友可以参考下
2015-08-08
-
php实现微信支付之企业付款
这篇文章主要为大家详细介绍了php实现微信支付之企业付款功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
2018-05-05
-
-
-
-
-
-