thinkPHP实现递归循环栏目并按照树形结构无限极输出的方法


Posted in PHP onMay 19, 2016

本文实例讲述了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递归栏目保存为数组

PHP 相关文章推荐
Windows下的PHP5.0详解
Nov 18 PHP
Mysql中limit的用法方法详解与注意事项
Apr 19 PHP
PHP 学习路线与时间表
Feb 21 PHP
php将会员数据导入到ucenter的代码
Jul 18 PHP
apache+php完美解决301重定向的两种方法
Jun 08 PHP
php数组函数序列之array_pop() - 删除数组中的最后一个元素
Nov 07 PHP
PHP中数组的三种排序方法分享
May 07 PHP
PHP 二维数组根据某个字段排序的具体实现
Jun 03 PHP
PHP SESSION的增加、删除、修改、查看操作
Mar 20 PHP
php简单生成随机数的方法
Jul 30 PHP
深入理解PHP中的count函数
May 31 PHP
浅谈php处理后端&amp;接口访问超时的解决方法
Oct 29 PHP
php处理json格式数据经典案例总结
May 19 #PHP
CI框架整合smarty步骤详解
May 19 #PHP
PHP QRCODE生成彩色二维码的方法
May 19 #PHP
PHP下载文件的函数实例代码
May 18 #PHP
PHP扩展框架之Yaf框架的安装与使用
May 18 #PHP
CI框架的安全性分析
May 18 #PHP
PHP的swoole扩展安装方法详细教程
May 18 #PHP
You might like
thinkphp 多表 事务详解
2013/06/17 PHP
php读取图片内容并输出到浏览器的实现代码
2013/08/08 PHP
利用phpExcel实现Excel数据的导入导出(全步骤详细解析)
2013/11/26 PHP
php字符串过滤与替换小结
2015/01/26 PHP
PHP与Ajax相结合实现登录验证小Demo
2016/03/16 PHP
PHP5.6.8连接SQL Server 2008 R2数据库常用技巧分析总结
2019/05/06 PHP
Laravel实现ORM带条件搜索分页
2019/10/24 PHP
JavaScript实现禁止后退的方法
2006/12/27 Javascript
五段实用的js高级技巧
2011/12/20 Javascript
什么是DOM(Document Object Model)文档对象模型
2012/03/05 Javascript
jQuery右下角旋转环状菜单特效代码
2015/08/10 Javascript
js实现iPhone界面风格的单选框和复选框按钮实例
2015/08/18 Javascript
微信QQ的二维码登录原理js代码解析
2016/06/23 Javascript
Vue 框架之动态绑定 css 样式实例分析
2018/11/14 Javascript
在layer弹层layer.prompt中,修改placeholder的实现方法
2019/09/27 Javascript
[01:19:46]DOTA2-DPC中国联赛 正赛 SAG vs DLG BO3 第一场 2月28日
2021/03/11 DOTA
Python学习教程之常用的内置函数大全
2017/07/14 Python
Python2与python3中 for 循环语句基础与实例分析
2017/11/20 Python
如何用python整理附件
2018/05/13 Python
pandas DataFrame实现几列数据合并成为新的一列方法
2018/06/08 Python
对Python 数组的切片操作详解
2018/07/02 Python
Python读取excel中的图片完美解决方法
2018/07/27 Python
详解python函数的闭包问题(内部函数与外部函数详述)
2019/05/17 Python
浅谈sklearn中predict与predict_proba区别
2020/06/28 Python
在keras里实现自定义上采样层
2020/06/28 Python
Python安装第三方库攻略(pip和Anaconda)
2020/10/15 Python
Data URI scheme详解和使用实例及图片base64编码实现方法
2014/05/08 HTML / CSS
Foot Locker意大利官网:全球领先的运动鞋和服装零售商
2017/05/30 全球购物
《胖乎乎的小手》教学反思
2014/02/26 职场文书
关于建议书的格式范文
2014/05/20 职场文书
六一儿童节标语
2014/10/08 职场文书
2014年导购员工作总结
2014/11/18 职场文书
质检员岗位职责
2015/02/03 职场文书
使用golang编写一个并发工作队列
2021/05/08 Golang
Python  lambda匿名函数和三元运算符
2022/04/19 Python
python高温预警数据获取实例
2022/07/23 Python