> 백엔드 개발 > PHP 튜토리얼 > PHP로 구현된 무한 분류(재귀 버전)의 예

PHP로 구현된 무한 분류(재귀 버전)의 예

WBOY
풀어 주다: 2016-07-25 09:04:49
원래의
939명이 탐색했습니다.
  1. 배열

  2. (
  3. [0] => 배열
  4. (
  5. [id] => 1
  6. [이름] => dev
  7. [부모 ID] => 0
  8. [하위 항목] => 배열
  9. (
  10. [0] => 배열
  11. 🎜> [id] => 2
  12. [name] => php
  13. [parentid] => 1
  14. [childs] => > 배열
  15. (
  16. [id] => 3
  17. [name] => smarty
  18. [parentid] => 2
  19. )

  20. < ;p> [1] => 배열
  21. (
  22. [id] => 5
  23. [이름] => pdo
  24. [상위 ID] => 2
  25. [어린이] => 배열
  26. (
  27. [0] => 배열
  28. (
  29. [id] => 6
  30. [이름] => pdo-mysql
  31. [부모 ID] => 5
  32. )

  33. )

  34. )

  35. )

  36. )

  37. [1] => 배열

  38. (
  39. [id] => 7
  40. [name] => java
  41. [parentid] => 1
  42. )

  43. )

  44. [1] => 배열

  45. (
  46. [id] => 4
  47. [name] => life
  48. [parentid] => 0
  49. )
  50. )

  51. 复代代码
看有没有更简单的实现방법

    $rows = array(

  1. array(
  2. 'id' => ; 1,
  3. '이름' => '개발자',
  4. '부모 ID' => 0
  5. ),
  6. 배열(
  7. 'id' => 2,
  8. '이름' => 'php',
  9. '부모 ID' => 1
  10. ),
  11. array(
  12. 'id' => 3,
  13. '이름' => 'smarty',
  14. 'parentid' => 2
  15. ),
  16. array(
  17. 'id' => 4,
  18. 'name' => 'life',
  19. 'parentid' => 0
  20. ),
  21. array(
  22. 'id' => 5,
  23. 'name' => 'pdo',
  24. 'parentid' => ; 2
  25. ),
  26. array(
  27. 'id' => 6,
  28. 'name' => 'pdo-mysql',
  29. 'parentid' => 5
  30. ),
  31. array(
  32. 'id' => 7,
  33. 'name' => 'java',
  34. 'parentid' => 1
  35. )
  36. ) ;

  37. // 72648

  38. // 84072
  39. function findChild(&$arr,$id){
  40. $childs=array();
  41. foreach ($arr as $k => $v){
  42. if($v['parentid']== $id){
  43. $childs[]=$v;
  44. }
  45. }
  46. $childs를 반환합니다.
  47. }

  48. function build_tree($root_id){

  49. 전역 $rows;
  50. $childs=findChild($rows,$root_id);
  51. if( 비어 있음($childs)){
  52. null 반환;
  53. }
  54. foreach($childs as $k => $v){
  55. $rescurTree=build_tree($v[id]);
  56. if( null != $rescurTree){
  57. $childs[$k]['childs']=$rescurTree;
  58. }
  59. }
  60. return $childs;
  61. }< /p>
  62. $tree=build_tree(0);

  63. echo memory_get_usage();
  64. print_r($tree);
  65. ?>

  66. 제제대码
관심을 가질 만한 기사: PHP에서 무제한 분류 예시(타오바오 상품 분류 모방) PHP에서 구현한 무한 분류(재귀 버전)의 예 PHP 배열을 사용한 무한 분류(데이터베이스 및 재귀 없음) 무한 분류를 재귀적으로 구현하고 드롭다운 목록을 생성하기 위해 PHP로 작성된 함수


원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿