PHP thinkphp 后台组装成无限极分类,组装成树状结构

 

1、调取出的树状分类,id和pid有关联逻辑

 

2、function.php 方法

复制代码
/*
 * === 无限极分类 生成树形数组 ===
 * $list 一维数组类型,id和pid需有逻辑关联
 * $root=0  意思是pid等于零代表一级结构
 *
 * 开发时间:
 * 2020-08-18
 *
 * 开发者:
 * 遇事稳坐钓鱼台 https://www.cnblogs.com/zc290987034
 * */
function make_tree($list,$root=0){
    $tree = array();
    $packData = array();
    //将所有的分类id作为数组key
    foreach ($list as $k => $v) {
        $packData[$v['id']] = $v;
    }
    //利用引用,将每个分类添加到父类child数组中,这样一次遍历即可形成树形结构。
    foreach ($packData as $key => $val) {
        if ($val['pid'] == $root) {//代表跟节点
            $tree[] = &$packData[$key];
        } else {
            //找到其父类
            $packData[$val['pid']]['child'][] = &$packData[$key];
        }
    }
    return $tree;
}
复制代码

 

3、处理后的效果

 

 

posted @   遇事稳坐钓鱼台  阅读(785)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
历史上的今天:
2017-08-19 新版谷歌浏览器怎么查找和改变编码格式 IT开发人员谷歌的编码格式
点击右上角即可分享
微信分享提示