国产精品国产三级国产试看,香蕉人精品视频多人免费永久视频,宅男噜噜噜66一区二区,天天插天天射,女人体(1963)菠萝蜜视频,97在线视频人妻无码一区,精品久久久久精品色婷婷综合

網站首頁
手機版

php遞歸算法經典實例(php遞歸函數(shù)詳解)

更新時間:2024-08-28 09:04:05作者:未知

php遞歸算法經典實例(php遞歸函數(shù)詳解)

這篇文章主要為大家詳細介紹了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ù)據按照縮進簡單排列 見圖1

function data2arr($tree, $rootId = 0, $level = 0) {

foreach($tree as $leaf) {

if($leaf[‘fid’] == $rootId) {

echo str_repeat(‘ ‘, $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ù)據按照所屬關系封裝 見圖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ù)據使用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實現(xiàn)通過文件頭判斷格式的方法

php時間函數(shù)的用法及實例分析

PHP引用返回用法實例詳解

以上就是PHP遞歸實現(xiàn)層級樹狀展開的方法的詳細內容,更多請關注其它相關文章!

本文標簽: [db:關鍵詞]  

為您推薦

word快捷鍵使用方法 word快捷鍵使用方法圖解

快捷鍵簡名功能Ctrl+0還原將IE頁面還原到100%Ctrl+1,2,3…切換瀏覽器切換到從左邊數(shù)起第1,2,3…個標簽Ctrl+ESCWindow打開開始菜單Ctrl+A全選全選當前頁面內容Ctr

2024-08-28 09:04

php遞歸算法經典實例(php遞歸函數(shù)詳解)

這篇文章主要為大家詳細介紹了PHP遞歸實現(xiàn)層級樹狀展開的相關資料,需要的朋友可以參考下效果圖: 實現(xiàn)代碼:<?php$db = mysql_connect(‘localhost’, ‘root’,

2024-08-28 09:04

css不透明度的設置 css背景不透明

今天遇到一個問題:div邊框和背景色隨主題色變化,邊框和字體不透明,背景半透明(如下圖所示) 設計圖在網上搜索解決辦法發(fā)現(xiàn)都是說使用rgba,但是另外一個問題就來了,背景和邊框的顏色就沒辦法改變了

2024-08-28 09:04

5種方法教你重置Mac用戶登錄密碼(5種方法教你重置mac用戶登錄密碼忘了)

如果你的 Mac 因為修改了賬戶名稱和個人目錄,丟失了管理員權限,以至于無法登錄原來的管理員用戶。莫慌,遇到這種情況,你可以登錄另一個管理員賬戶,如果沒有另一個管理員賬戶,你可以新建一個,然后通過這個

2024-08-28 09:02

cad查看點坐標快捷命令 cad2016查看點坐標

在應用CAD進行坐標輸入進行定位的時候,首先我們要確定動態(tài)輸入處于關閉狀態(tài),動態(tài)輸入開啟與關閉的快捷鍵為F12;由下圖可以看出在輸入絕對坐標的時候假如動態(tài)輸入處于開啟狀態(tài),第二點的坐標值為相對于前一點

2024-08-28 09:02

更換賬戶頭像的方法(用戶賬戶怎么換頭像)

使用win10系統(tǒng)的位小伙伴都知道,在win10賬戶名中可以自定義頭像。不過小編發(fā)現(xiàn)有不少的小伙伴在添加了頭像之后是不知道怎么進行刪除的,這可該咋辦呢?今天小編就來給大家說說win10下怎么修改用戶賬

2024-08-28 09:02