无限分类

Posted 晨曦年华

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了无限分类相关的知识,希望对你有一定的参考价值。

/**
     * 二级分类
     * @param $data
     * @return array
     */
    public function getTree($data)
    {
        $arr = [];
        foreach ($data as $k=>$v){
            if($v->cate_pid == 0 ){
                $data[$k][_cate_name] = $v[cate_name];
                $arr[] = $data[$k];
            }
            foreach ($data as $m=>$n) {
                if($v->cate_id == $n->cate_pid){
                    $data[$m][_cate_name] = |-- .$n[cate_name];
                    $arr[] =  $data[$m];
                }
            }
        }
        return $arr;
    }
 /**
     * 递归方法
     * @param $data        要遍历的数组
     * @param int $pid     父id
     * @param int $level   缩进值
     * @return array
     */
    public function getTree($data,$pid=0,$level=0)
    {
        static $res = []; //静态变量的作用:在函数内部定义的变量能起到全局变量的作用
        foreach ($data as $k=>$v){
            if($v->cate_pid == $pid){
                //如果父id相等 说明找到 保存起来
                $v[level] = $level;     //页面中使用level 则 str_repeat(‘_‘,$data[‘level‘]);
                $res[] = $v;
                //改变条件递归查找
                $this->getTree($data,$v->cate_id,$level+1);
            }
        }
        return $res;
    }

 

以上是关于无限分类的主要内容,如果未能解决你的问题,请参考以下文章

PHP全路径无限分类导航LINK代码实现

PHP无限极分类详谈

thinkphp无限极分类

创建无限极分类树型结构

Laravel框架实现无限极分类

如何用php实现添加无限分类?类似织梦后台那种可以无限添加分类