从mySql数据库创建树

时间:2012-05-07 05:42:42

标签: php mysql tree pear

我在db中有fields

的表
-----------------------
Id | Value | Path | Parent
-----------------------

1  | Asia  | 1    | 0 
2  | India | 1/2  | 1
3  | Goa   | 1/2/3| 2

该列表包含了世界上所有的城市。 所以它非常重要。

问题

如果我的产品已选择所有父母的叶子。 [例如,对于ID:3,ID为3,2,1]我可以使用AJAX函数生成基于ParentID的树。

但是

我选择了一种给我树叶的产品。 [例如,ID:3]所以我需要解析使用Path生成树,听起来太糟糕了[解析字符串会很慢。]

这件事有没有通用的解决方案? - 我可以创建一个视图并存储相应的父r.f叶。 - 使用PEAR树?

或直接涉及DB的任何其他更好的解决方案。

修改

树形结构:

Asia
 >India
   >Goa

修改

通过解析PATH的递归函数不适合这项工作。那将是缓慢的。

1 个答案:

答案 0 :(得分:0)

PEAR Tree package已针对此特定任务而制作。试试这个经过验证的软件包,而不是发明自己的代码。