字符串数据到树


String data to tree

我正在使用PHP和MySQL构建一个家谱程序,并且几乎完成了它。我的主程序处理3个表:个人表、子女表和配偶表。正如你所猜测的,最后两个表只是关系表,有了它,我可以绘制整个家谱。表"individual"包含所有具有Gender, date of birth, date of death, email, first name, last name等详细信息的家族成员,而"child"表只有2列——parentID and childID"spouse"表有"individaulID""spouseID"

现在需要只显示选定节点的关系树。我将收到的数据如下:

"P(13)=14,P(14)=15,P(15)=16,C(16)=17,S(17)=18,C(17)=19"

这里"p(13)=14"表示14是13个孩子的父母,"C(16)=17"表示17是16个孩子的孩子,"S(17)=18"表示18是17个孩子的配偶。

我不想创建临时表,因为对于多个用户,临时表可能会导致问题。关于如何解析这些数据并创建UL LI结构,有什么想法吗?

谢谢,Sudhir

我解决了它。我所做的如下:
从字符串中我可以找到最上面的节点。此外,我可以在字符串中找到所需的用户ID,并将列表存储在$valid_IDs中。因此,我使用top节点作为ID运行了我的原始脚本,并修改了SQL,使其在where子句

中包含
"individual_id in ($valid_ids)"