無限極分類,遞迴分類

2022-07-03 09:12:11 字數 2557 閱讀 7321

有一組陣列如下:

<?php

$items =array(

1 => array('

id' => 1, '

pid' => 0, '

name

' => '

江西省'

),

2 => array('

id' => 2, '

pid' => 0, '

name

' => '

黑龍江省'),

3 => array('

id' => 3, '

pid' => 1, '

name

' => '

南昌市'

),

4 => array('

id' => 4, '

pid' => 2, '

name

' => '

哈爾濱市'),

5 => array('

id' => 5, '

pid' => 2, '

name

' => '

雞西市'

),

6 => array('

id' => 6, '

pid' => 4, '

name

' => '

香坊區'

),

7 => array('

id' => 7, '

pid' => 4, '

name

' => '

南崗區'

),

8 => array('

id' => 8, '

pid' => 6, '

name

' => '

和興路'

),

9 => array('

id' => 9, '

pid' => 7, '

name

' => '

西大直街'),

10 => array('

id' => 10, '

pid' => 8, '

name

' => '

東北林業大學'),

11 => array('

id' => 11, '

pid' => 9, '

name

' => '

哈爾濱工業大學'),

12 => array('

id' => 12, '

pid' => 8, '

name

' => '

哈爾濱師範大學'),

13 => array('

id' => 13, '

pid' => 1, '

name

' => '

贛州市'

),

14 => array('

id' => 14, '

pid' => 13, '

name

' => '贛縣'

),

15 => array('

id' => 15, '

pid' => 13, '

name

' => '

于都縣'

),

16 => array('

id' => 16, '

pid' => 14, '

name

' => '

茅店鎮'

),

17 => array('

id' => 17, '

pid' => 14, '

name

' => '

大田鄉'

),

18 => array('

id' => 18, '

pid' => 16, '

name

' => '

義源村'

),

19 => array('

id' => 19, '

pid' => 16, '

name

' => '

上壩村'

),);?>

常見遞迴方法:

<?php

function gettree($arr,$parent_id)

$tree =$v;}}

return

$tree;

}?>

a方法:

<?php

function gentree5($items) ?>

b方法:

<?php/**

* 將資料格式化成樹形結構

* @author xuefen.tong

* @param array $items

* @return array */

function gentree9($items) ?>

以上就是這次的全部內容!

遞迴 無限極分類

遞迴無限極分類就是自身呼叫自身進行迴圈操作,有兩種辦法一種是通過等級另一種是通過資料結構進行資料迴圈 public function roles data,pid 0,levae 0 將資料轉換成陣列 d json decode json encode data true array array 將...

無限極分類

面試的時候被問到無限極分類的設計和實現,比較常見的做法是在建表的時候,增加乙個pid欄位用來區別自己所屬的分類 array array array id 1,pid 0,name 河北省 array id 2,pid 0,name 北京市 array id 3,pid 1,name 邯鄲市 arra...

實現無限極分類 使用遞迴

商品分類 data 所有的分類資料 pid 父類id level 是用於區分層級關係定義的變數 function gettree data,pid 0,level 0 return arr 遞迴刪除 根據業務需求制定 function getdel data,id return arr 使用無限極分...