php递归实现无限分类的方法
程序员文章站
2023-12-03 17:09:52
本文实例讲述了php递归实现无限分类的方法。分享给大家供大家参考。具体如下:
本文实例讲述了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程序设计有所帮助。
上一篇: PHP编写RESTful接口
下一篇: sql集合运算符使用方法