使用 PHP 和 MySQL。
我有一个表(类别),只有三个字段,id,name,parent。
其中parent在根类别上为 0,如果它是从另一个派生的,则为整数。
但是我们可以在其中有几个级别,例如:
id, name, parent
01, Name 01, 00
02, Name 02, 00
03, Name 03, 00
04, Name 04, 02
05, Name 05, 01
06, Name 06, 01
07, Name 07, 05
08, Name 07, 05
09, Name 09, 04
10, Name 10, 07
11, Name 11, 10
我们如何返回一个包含根及其所有子节点的数组?例如,对于 id=1,数组应该是:
array (
1 => array(
id => 1,
name => 'Name 1'
),
5 => array(
id => 5,
name => 'Name 5'
),
6 => array(
id => 6,
name => 'Name 6'
),
7 => array(
id => 7,
name => 'Name 7'
),
8 => array(
id => 8,
name => 'Name 8'
),
10 => array(
id => 10,
name => 'Name 10'
),
11 => array(
id => 11,
name => 'Name 11'
)
);
我看过这个链接并尝试了一些变化,但我还没有成功。