欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 上面生成树方法还可以精简到5行: 代码示例: ?php function generateTree($items){ foreach($items as $item) $items[$item['pid']]['son'][$item['id']] = $items[$item['id']]; return isset
欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入
上面生成树方法还可以精简到5行:
代码示例:
function generateTree($items){
foreach($items as $item)
$items[$item['pid']]['son'][$item['id']] = &$items[$item['id']];
return isset($items[0]['son']) ? $items[0]['son'] : array();
}
上面这种无限极分类数据树形结构化的方法值得借鉴。
感觉这段代码实际用途并不明显啊,想取出格式化的树形数据还是要递归啊:
代码示例:
/**
* 如何取数据格式化的树形数据
* @site
*/
$tree = generateTree($items);
function getTreeData($tree){
foreach($tree as $t){
echo $t['name'].'
';
if(isset($t['son'])){
getTreeData($t['son']);
}
}
}
getTreeData($tree);
[1] [2]