重慶分公司,新征程啟航
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)
這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)如何在PHP中利用遞歸實現(xiàn)一個層級樹狀展開效果,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
實現(xiàn)代碼:
$arr['id'], 'fid' => $arr['fid'], 'name' => $arr['name'], ); } // 將數(shù)據(jù)按照縮進(jìn)簡單排列 見圖1 function data2arr($tree, $rootId = 0, $level = 0) { foreach($tree as $leaf) { if($leaf['fid'] == $rootId) { echo str_repeat(' ', $level) . $leaf['id'] . ' ' . $leaf['name'] . '
'; foreach($tree as $l) { if($l['fid'] == $leaf['id']) { data2arr($tree, $leaf['id'], $level + 1); break; } } } } } data2arr($data); echo '
-----------------------------------------------------------------------
'; // 將數(shù)據(jù)按照所屬關(guān)系封裝 見圖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 '
-----------------------------------------------------------------------
'; // 將數(shù)據(jù)使用HTML再次展現(xiàn) 見圖3 function tree2html($tree) { echo '
上述就是小編為大家分享的如何在PHP中利用遞歸實現(xiàn)一個層級樹狀展開效果了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。