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;
}
网友评论