本文实例讲述了php递归实现无限分类的方法。分享给大家供大家参考。具体如下:
<?php
$rows = array(
array(
\'id\' => 1,
\'name\' => \'dev\',
\'parentid\' => 0
),
array(
\'id\' => 2,
\'name\' => \'php\',
\'parentid\' => 1
),
array(
\'id\' => 3,
\'name\' => \'smarty\',
\'parentid\' => 2
),
array(
\'id\' => 4,
\'name\' => \'life\',
\'parentid\' => 0
),
array(
\'id\' => 5,
\'name\' => \'pdo\',
\'parentid\' => 2
),
array(
\'id\' => 6,
\'name\' => \'pdo-mysql\',
\'parentid\' => 5
),
array(
\'id\' => 7,
\'name\' => \'java\',
\'parentid\' => 1
)
);
// 72648
// 84072
function findChild(&$arr,$id){
$childs=array();
foreach ($arr as $k => $v){
if($v[\'parentid\']== $id){
$childs[]=$v;
}
}
return $childs;
}
function build_tree($root_id){
global $rows;
$childs=findChild($rows,$root_id);
if(empty($childs)){
return null;
}
foreach ($childs as $k => $v){
$rescurTree=build_tree($v[id]);
if( null != $rescurTree){
$childs[$k][\'childs\']=$rescurTree;
}
}
return $childs;
}
$tree=build_tree(0);
echo memory_get_usage();
print_r($tree);
?>
希望本文所述对大家的php程序设计有所帮助。
本文地址:https://www.stayed.cn/item/6125
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我