龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > php编程 >

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

时间:2014-07-18 02:06来源:网络整理 作者:网络 点击:
分享到:
巧妙使用php引用实现无限分类,输出层级数组,不用递归 数据表字段,id,parentid。父分类parentid=0,子分类的parentid=父id。[代码片段(21行)]

数据表字段,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;
}
//该片段来自于http://outofmemory.cn
精彩图集

赞助商链接