首页 > 开发 > PHP > 正文

php递归实现无限分类的方法

2024-05-04 23:38:10
字体:
来源:转载
供稿:网友

这篇文章主要介绍了php递归实现无限分类的方法,涉及php递归遍历的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了php递归实现无限分类的方法。分享给大家供大家参考。具体如下:

 

 
  1. <?php 
  2. $rows = array( 
  3. array( 
  4. 'id' => 1, 
  5. 'name' => 'dev'
  6. 'parentid' => 0 
  7. ), 
  8. array( 
  9. 'id' => 2, 
  10. 'name' => 'php'
  11. 'parentid' => 1 
  12. ), 
  13. array( 
  14. 'id' => 3, 
  15. 'name' => 'smarty'
  16. 'parentid' => 2 
  17. ), 
  18. array( 
  19. 'id' => 4, 
  20. 'name' => 'life'
  21. 'parentid' => 0 
  22. ), 
  23. array( 
  24. 'id' => 5, 
  25. 'name' => 'pdo'
  26. 'parentid' => 2 
  27. ), 
  28. array( 
  29. 'id' => 6, 
  30. 'name' => 'pdo-mysql'
  31. 'parentid' => 5 
  32. ), 
  33. array( 
  34. 'id' => 7, 
  35. 'name' => 'java'
  36. 'parentid' => 1 
  37. ); 
  38. // 72648 
  39. // 84072 
  40. function findChild(&$arr,$id){ 
  41. $childs=array(); 
  42. foreach ($arr as $k => $v){ 
  43. if($v['parentid']== $id){ 
  44. $childs[]=$v; 
  45. return $childs; 
  46. function build_tree($root_id){ 
  47. global $rows; 
  48. $childs=findChild($rows,$root_id); 
  49. if(empty($childs)){ 
  50. return null
  51. foreach ($childs as $k => $v){ 
  52. $rescurTree=build_tree($v[id]); 
  53. ifnull != $rescurTree){  
  54. $childs[$k]['childs']=$rescurTree; 
  55. return $childs; 
  56. $tree=build_tree(0); 
  57. echo memory_get_usage(); 
  58. print_r($tree); 
  59. ?> 

希望本文所述对大家的php程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表