亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

PHP遞歸實現(xiàn)層級樹狀展開

 更新時間:2016年04月01日 16:00:20   作者:mickelfeng  
這篇文章主要為大家詳細介紹了PHP遞歸實現(xiàn)層級樹狀展開的相關資料,需要的朋友可以參考下

本文實例為大家分享了PHP遞歸實現(xiàn)層級樹狀展開的主要代碼,供大家參考,具體內容如下

效果圖:

實現(xiàn)代碼:

<?php 
  
$db = mysql_connect('localhost', 'root', 'root') or die('Can\'t connect to database'); 
mysql_select_db('test') or die('Can\'t find database : test'); 
$result = mysql_query('select id, fid, name from tree'); 
while($arr = mysql_fetch_array($result)){ 
  $data[] = array( 
    'id' => $arr['id'],  
    'fid' => $arr['fid'], 
    'name' => $arr['name'],  
  ); 
} 
  
// 將數(shù)據(jù)按照縮進簡單排列 見圖1 
function data2arr($tree, $rootId = 0, $level = 0) { 
  foreach($tree as $leaf) { 
    if($leaf['fid'] == $rootId) { 
      echo str_repeat('&nbsp;&nbsp;&nbsp;&nbsp;', $level) . $leaf['id'] . ' ' . $leaf['name'] . '<br/>'; 
      foreach($tree as $l) { 
        if($l['fid'] == $leaf['id']) { 
          data2arr($tree, $leaf['id'], $level + 1); 
          break; 
        } 
      } 
    } 
  } 
} 
  
data2arr($data); 
echo '<br/>-----------------------------------------------------------------------<br/>'; 
  
// 將數(shù)據(jù)按照所屬關系封裝 見圖2 
function arr2tree($tree, $rootId = 0) { 
  $return = array(); 
  foreach($tree as $leaf) { 
    if($leaf['fid'] == $rootId) { 
      foreach($tree as $subleaf) { 
        if($subleaf['fid'] == $leaf['id']) { 
          $leaf['children'] = arr2tree($tree, $leaf['id']); 
          break; 
        } 
      } 
      $return[] = $leaf; 
    } 
  } 
  return $return; 
} 
  
$tree = arr2tree($data); 
print_r($tree); 
echo '<br/>-----------------------------------------------------------------------<br/>'; 
  
// 將數(shù)據(jù)使用HTML再次展現(xiàn) 見圖3 
function tree2html($tree) { 
  echo '<ul>'; 
  foreach($tree as $leaf) { 
    echo '<li>' .$leaf['name']; 
    if(! emptyempty($leaf['children'])) tree2html($leaf['children']); 
    echo '</li>'; 
  } 
  echo '</ul>'; 
} 
  
tree2html($tree);

以上就是本文的全部內容,希望對大家學習php程序設計有所幫助。

相關文章

  • php實現(xiàn)分頁功能的詳細實例方法

    php實現(xiàn)分頁功能的詳細實例方法

    在本篇文章里小編給大家整理的是關于php實現(xiàn)分頁功能的詳細實例方法,有需要的朋友們可以學習下。
    2019-09-09
  • 解析php中如何直接執(zhí)行SHELL

    解析php中如何直接執(zhí)行SHELL

    本篇文章是對php中直接執(zhí)行SHELL的方法進行了詳細的分析介紹,需要的朋友參考下
    2013-06-06
  • 使用PHP的日期與時間函數(shù)技巧

    使用PHP的日期與時間函數(shù)技巧

    任何一種語言,日期和時間函數(shù)都是我們常使用的,下面就教你PHP下的日期和時間的技巧
    2008-04-04
  • PHP json_encode中文亂碼解決方法

    PHP json_encode中文亂碼解決方法

    這篇文章主要介紹了PHP json_encode中文亂碼解決方法,有遇到此類問題的同學,可以參考一下
    2021-04-04
  • php數(shù)字轉漢字代碼(算法)

    php數(shù)字轉漢字代碼(算法)

    php數(shù)字轉漢字代碼(算法),學習php的朋友可以參考下。
    2011-10-10
  • 淺析PHP7的多進程及實例源碼

    淺析PHP7的多進程及實例源碼

    在本篇內容里小編給大家分享了關于PHP7之多進程的相關概念和實例代碼知識點,需要的朋友們跟著學習下。
    2019-04-04
  • 深入理解PHP原理之異常機制

    深入理解PHP原理之異常機制

    在PHP每一個可獨立執(zhí)行的op array最后的ZEND_HANDLE_EXCEPTION是用來干什么呢?
    2010-08-08
  • PHP設計模式 注冊表模式

    PHP設計模式 注冊表模式

    注冊表模式其實是一個單例模式,注冊表類提供靜態(tài)方法(或單例對象的實例化方法)來讓其它對象訪問其中的數(shù)據(jù)(通常是對象)。整個系統(tǒng)中的每個對象都可以訪問這些數(shù)據(jù)對象
    2012-02-02
  • php使用GuzzleHttp實現(xiàn)HTTP請求

    php使用GuzzleHttp實現(xiàn)HTTP請求

    這篇文章主要為大家詳細介紹了php如何使用GuzzleHttp實現(xiàn)HTTP請求,文中的示例代碼講解詳細,具有一定的借鑒價值,感興趣的小伙伴可以跟隨小編一起學習一下
    2023-11-11
  • 利用PHP_XLSXWriter代替PHPExcel的方法示例

    利用PHP_XLSXWriter代替PHPExcel的方法示例

    PHPExcel是一個處理Excel,CVS文件的開源框架,但不幸的是PHPExcel官方已不再維護了這個項目了,官方團隊在github上又起了一個新項目,叫PhpSpreadsheet。那么這篇文章主要給大家介紹了關于利用PHP_XLSXWriter代替PHPExcel的方法示例,需要的朋友可以參考下。
    2017-07-07

最新評論