假设我有以下定义表结构:
id(int),related_to(int),description(文本
)
并且该表包含类似于以下内容的数据:
id related_to description
1 0 departmen1
2 1 section1
3 2 devision1
4 0 departmen2
5 4 section2
6 4 etc....
我需要一个 SQL 语句或 PHP 代码来表示单独数组元素中的每个层次结构。
结果一定是
$data=array(
0=>'department1','section1','devision1'
2=>'departmen2','section2','devision2'
3=> 'departmen1','section3',.......
);
执行此操作的最佳方法是什么?
谢谢。
最佳答案
在 PHP 中处理树状结构的最佳方式是使用对象。可以找到一个很好的例子 here .
向树对象添加一个函数,该函数以您想要的数组格式返回子对象,并在子对象上调用相同的函数。通过对顶级对象的一个函数调用,您将收到一组包含您需要的格式的所有子项。参见 Tree Traversal有关递归函数的更多信息。
关于php - 构建数组来表示公司层次结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6322215/