> php教程 > PHP源码 > php无限分类(递归版本)

php无限分类(递归版本)

PHP中文网
풀어 주다: 2016-05-25 17:14:22
원래의
1345명이 탐색했습니다.

php代码

<?php
$rows = array(
    array(
        &#39;id&#39; => 1,
        &#39;name&#39; => &#39;dev&#39;,
        &#39;parentid&#39; => 0
    ),
    array(
        &#39;id&#39; => 2,
        &#39;name&#39; => &#39;php&#39;,
        &#39;parentid&#39; => 1
    ),
    array(
        &#39;id&#39; => 3,
        &#39;name&#39; => &#39;smarty&#39;,
        &#39;parentid&#39; => 2
    ),
    array(
        &#39;id&#39; => 4,
        &#39;name&#39; => &#39;life&#39;,
        &#39;parentid&#39; => 0
    ),
    array(
        &#39;id&#39; => 5,
        &#39;name&#39; => &#39;pdo&#39;,
        &#39;parentid&#39; => 2
    ),
    array(
        &#39;id&#39; => 6,
        &#39;name&#39; => &#39;pdo-mysql&#39;,
        &#39;parentid&#39; => 5
    ),
    array(
        &#39;id&#39; => 7,
        &#39;name&#39; => &#39;java&#39;,
        &#39;parentid&#39; => 1
    )
);

// 72648
// 84072

function findChild(&$arr,$id){
  
    $childs=array();
     foreach ($arr as $k => $v){
         if($v[&#39;parentid&#39;]== $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][&#39;childs&#39;]=$rescurTree;
       }
   }
    return $childs;
}

 
$tree=build_tree(0);

echo memory_get_usage();

print_r($tree);



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