function genTree($items,$id='id',$fid='fid',$son = 'children'){
$tree = array(); //格式化的树
$tmpMap = array(); //临时扁平数据
foreach ($items as $item) {
$tmpMap[$item[$id]] = $item;
}
foreach ($items as $item) {
if (isset($tmpMap[$item[$fid]])) {
$tmpMap[$item[$fid]][$son][] = &$tmpMap[$item[$id]];
} else {
$tree[] = &$tmpMap[$item[$id]];
}
}
unset($tmpMap);
return $tree;
}