【发布时间】:2020-01-07 00:33:33
【问题描述】:
我只有第N个层次数组返回,这个函数返回所有子列表
$arr = array(
array('id'=>100, 'parentid'=>0, 'name'=>'a'),
array('id'=>101, 'parentid'=>100, 'name'=>'a'),
array('id'=>102, 'parentid'=>101, 'name'=>'a'),
array('id'=>103, 'parentid'=>101, 'name'=>'a'),
);
$new = array();
foreach ($arr as $a){
$new[$a['parentid']][] = $a;
}
$tree = createTree($new, array($arr[0]));
print_r($tree);
function createTree(&$list, $parent){
$tree = array();
foreach ($parent as $k=>$l){
if(isset($list[$l['id']])){
$l['children'] = createTree($list, $list[$l['id']]);
}
$tree[] = $l;
}
return $tree;
}
此函数返回数组中的所有数据。
此函数返回不能返回特定级别完成然后中断并返回值
【问题讨论】:
-
你的预期输出是什么?
-
这个函数返回不能返回特定关卡完成然后中断并返回值
标签: php arrays recursion tree binary-tree