php 引用算法无限极分类

function getTree($array){
    $items = array();
    foreach($array as $value){
        $items[$value['id']] = $value;
    }

    $tree = array();
    foreach($items as $key => $value){
        if(isset($items[$value['pid']])){
            //根据php变量按值传递的规则 你并没有更改tree数组中的上一组的数据 所以这里用到了引用传递
            $items[$value['pid']]['son'][$items[$key]['id']] = &$items[$key];
        }else{
            $tree[$items[$key]['id']] = &$items[$key];
        }
    }
    return $tree;
}

你可能感兴趣的:(php 引用算法无限极分类)