【发布时间】:2013-03-08 00:22:33
【问题描述】:
我有一个从使用邻接模型构建主题层次结构的数据库表中获取的数据数组。每条记录包含以下字段:
- 'id' - 一个唯一的 AI id。
- 'name' - 显示名称。
- 'parent_id' - 父主题的 id(对于根主题可以为 null)
该数组来自数据库,未嵌套并按 id 排序,如您所料。 'id' 字段是随机且随意的,不能依赖它来生成有用的订单。我正在寻找一种使用 parent_id 对数组进行排序的方法,以便它具有正确的邻接顺序,但最终结果不会嵌套到子数组中。该列表如下所示:
- RootTopicA
- 主题1
- 主题2
- Child1ofATopic2
- Child2ofATopic2
- 主题3
- RootTopicB
- BTopic1
- BTopic2
- 等
任何帮助或指向示例的指针(即使是不同的语言)将不胜感激。
【问题讨论】:
-
你的数组结构是什么?我了解,上面的列表是您想要的输出,但输入是什么?
-
它是一个来自数据库的记录数组 array(array(id=>1,name=>RootTopicA,parent_id=>null),array(id=>2,name=>ATopic1, parent_id= >1)) 等
标签: php arrays sorting adjacency-list adjacency-list-model