博主信息
博文 55
粉丝 0
评论 0
访问量 70738
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
php递归
南鸢离梦的博客
原创
1179人浏览过
// 多分类列表
public function cate()
{
    $cate = doCate::all()->toArray();
    $cate = $this->getTree($cate);
    for ($i=0;$i<sizeof($cate);$i++){
        $cate[$i]['title'] =  str_repeat('&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-----', $cate[$i]['level']).$cate[$i]['title'];
    }

    $this->assign('cate',$cate);
    return $this->fetch();
}


// 递归分类
function getTree($array, $pid =0, $level = 0){

    //声明静态数组,避免递归调用时,多次声明导致数组覆盖
    static $list = [];
    foreach ($array as $key => $value){
        //第一次遍历,找到父节点为根节点的节点 也就是pid=0的节点
        if ($value['pid'] == $pid){
            //父节点为根节点的节点,级别为0,也就是第一级
            $value['level'] = $level;
            //把数组放到list中
            $list[] = $value;
            //把这个节点从数组中移除,减少后续递归消耗
            unset($array[$key]);
            //开始递归,查找父ID为该节点ID的节点,级别则为原级别+1
            $this->getTree($array, $value['id'], $level+1);

        }
    }
    return $list;
}
{volist name="cate" id="v"}
 <tr cate-id="{$v.id}" fid={$v.pid} >

     <td>{$v.id}</td>
     <td>
         <i class="layui-icon x-show" status='true'>&#xe623;</i>
         <?php echo $v['title']?>
     </td>

     <td>
         <button class="layui-btn layui-btn layui-btn-xs"  onclick="disCate({$v.id},{$v.status})" n>{if $v.status == 1}正常{else/}已禁用{/if}</button>
     </td>
     <td class="td-manage">
         <button class="layui-btn layui-btn layui-btn-xs"  onclick="xadmin.open('编辑','editCate/?id={$v.id}',600,400)" >
             <i class="layui-icon">&#xe642;</i>编辑
         </button>
         <button class="layui-btn layui-btn-warm layui-btn-xs"  onclick="xadmin.open('编辑','addCate/?pid={$v.id}',600,400)" >
             <i class="layui-icon">&#xe642;</i>添加子分类
         </button>
     </td>
 </tr>
{/volist}





本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学