無限極分類php實現—查子孫樹、家譜樹

來源:互聯網
上載者:User

標籤:int   start   get   str   北京市   ++   name   無限級   function   

  1. <?php  
  2.   
  3.   
  4. // 無限級分類中,查家譜樹   
  5.   
  6.   
  7. $area = array(  
  8. 0=>array(‘cat_id‘=>1,‘cat_name‘=>‘北京市‘,‘parent_id‘=>0),  
  9. 1=>array(‘cat_id‘=>2,‘cat_name‘=>‘館陶縣‘,‘parent_id‘=>5),  
  10. 2=>array(‘cat_id‘=>3,‘cat_name‘=>‘海澱區‘,‘parent_id‘=>1),  
  11. 3=>array(‘cat_id‘=>4,‘cat_name‘=>‘朝陽區‘,‘parent_id‘=>1),  
  12. 4=>array(‘cat_id‘=>5,‘cat_name‘=>‘邯鄲市‘,‘parent_id‘=>6),  
  13. 5=>array(‘cat_id‘=>6,‘cat_name‘=>‘河北省‘,‘parent_id‘=>0),  
  14. );  
  15.   
  16.   
  17. function gettree($arr,$cat_id) {  
  18.         static $list = array();  
  19.         static $num = 0;  
  20.         foreach($arr as $v) {  
  21.          echo ++$num .‘<br />‘;  
  22.             if($v[‘cat_id‘] == $cat_id) {  
  23.                 $num = 0;  
  24.                 gettree($arr,$v[‘parent_id‘]);  
  25.                 $list[] = $v;             
  26.             }  
  27.         }  
  28.   
  29.   
  30.         return $list;  
  31.     }  
  32.   
  33.   
  34. $list = gettree($area,2);  
  35.   
  36.   
  37. print_r($list);  
  38.   
  39.   
  40.   
  41. ?>  

 

  1. <?php  
  2.   
  3. // 無限級分類中,尋找子孫樹  
  4.   
  5. $area = array(  
  6. 0=>array(‘cat_id‘=>1,‘cat_name‘=>‘北京市‘,‘parent_id‘=>0),  
  7. 1=>array(‘cat_id‘=>2,‘cat_name‘=>‘館陶縣‘,‘parent_id‘=>5),  
  8. 2=>array(‘cat_id‘=>3,‘cat_name‘=>‘海澱區‘,‘parent_id‘=>1),  
  9. 3=>array(‘cat_id‘=>4,‘cat_name‘=>‘朝陽區‘,‘parent_id‘=>1),  
  10. 4=>array(‘cat_id‘=>5,‘cat_name‘=>‘邯鄲市‘,‘parent_id‘=>6),  
  11. 5=>array(‘cat_id‘=>6,‘cat_name‘=>‘河北省‘,‘parent_id‘=>0),  
  12. );  
  13.   
  14. function catsort($arr,$parent_id = 0,$lev=1) {  
  15.     static $list = array();  
  16.     static $num = 0;  
  17.     foreach($arr as $v) {  
  18.         echo ++$num . ‘<br />‘;  
  19.         if($v[‘parent_id‘] == $parent_id) {  
  20.             $num = 0;  
  21.             $v[‘lev‘] = $lev;  
  22.             $list[] = $v;  
  23.             catsort($arr,$v[‘cat_id‘],$lev+1);  
  24.         }  
  25.     }  
  26.     return $list;  
  27. }  
  28.   
  29. $list = catsort($area,0,1);  
  30.   
  31. foreach($list as $v) {  
  32.     echo str_repeat(‘    ‘,$v[‘lev‘]),$v[‘cat_name‘],‘<br />‘;  
  33. }  
  34.   
  35. ?>

 

無限極分類php實現—查子孫樹、家譜樹

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.