欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

巧妙使用php引用实现无限分类,输出层级数组,不用递归

程序员文章站 2022-06-01 19:52:41
...
数据表字段,id,parentid。
父分类parentid=0,子分类的parentid=父id。
function getDataTree($rows, $id='id',$pid = 'parentid',$child = 'child',$root=0) {      $tree = array(); // 树  
        if(is_array($rows)){
             $array = array();
             foreach ($rows as $key=>$item){
             $array[$item[$id]] =& $rows[$key];
         }
         foreach($rows as $key=>$item){
             $parentId = $item[$pid];
             if($root == $parentId){
                 $tree[] =&$rows[$key];
             }else{
                 if(isset($array[$parentId])){
                     $parent =&$array[$parentId];
                     $parent[$child][]=&$rows[$key];
                 }
             }
         }
     }
     return $tree;
}