PHP實現多級分類生成樹的方法

2021-10-09 22:07:06 字數 1673 閱讀 9784

php無限級分類生成樹:

/**

* 生成樹

* @param $items

* @return array

*/function

generatetree

($items

)else

}return

$tree;}

$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'

=>3,

'name'

=>

'長豐縣'),

5=>

array

('id'

=>5,

'pid'

=>1,

'name'

=>

'安慶市'),

);print_r

(generatetree

($items))

;

執行效果:

array([

0]=> array

([id]

=>

1[pid]

=>

0[name]

=> 安徽省

[son]

=> array

([0]=

> array

([id]

=>

3[pid]

=>

1[name]

=> 合肥市

[son]

=> array

([0]=

> array

([id]

=>

4[pid]

=>

3[name]

=> 長豐縣

)))[1]=

> array

([id]

=>

5[pid]

=>

1[name]

=> 安慶市

)))[1]=

> array

([id]

=>

2[pid]

=>

0[name]

=> 浙江省

))

上面生成樹的方法可精簡為如下**:

/**

* 生成樹

* @param $items

* @return array|mixed

*/function

generatetree2

($items

)

PHP實現無限極分類生成分類樹的方法

現在的分類資料庫設計基本都是 每乙個分類有乙個id主鍵字段,乙個pid指向父類的id,這樣便可實現無限級分類,取出的資料就是如下的格式 arr array array id 1 pid 0 cat 欄目一 array id 2 pid 0 cat 欄目二 array id 3 pid 1 cat 欄...

PHP實現無限極分類生成分類樹的方法

現在的分類資料庫設計基本都是 每乙個分類有乙個id主鍵字段,乙個pid指向父類的id,這樣便可實現無限級分類,取出的資料就是如下的格式 arr array array id 1 pid 0 cat 欄目一 array id 2 pid 0 cat 欄目二 array id 3 pid 1 cat 欄...

PHP 無限級分類生成樹方法

你還在用浪費時間又浪費記憶體的遞迴遍歷無限極分類嗎,看了該篇文章,我覺得你應該換換了。這是我在oschina上看到的一段非常精簡的php無限極分類生成樹方法,巧在引用,整理分享了。function generatetree items else return tree items array 1 a...