树菜单 - 4个级别

时间:2011-04-30 22:54:34

标签: php mysql arrays menu tree

我的网站有4级菜单结构: 部分(在章节tabel中),类别(在类别tabel中,section_id指向部分)然后是页面(在tabel页面中我有parent_id,因为页面实际上可以是另一个页面的子页面,并且每个页面也属于一个部分)。

如何构建菜单? (我使用PHP和MySQL) 现在我使用4个嵌套查询。首先,我选择所有部分,然后为每个部分选择所有类别,对于所有类别,我选择没有父级的页面,然后为每个页面选择子页面。

此外,我只能使用一个查询(使用RIGHT JOIN)来获取包含section_id,category_id,page_id,parent_id的数组。但我不知道如何将这个数组转换为树数组。

1 个答案:

答案 0 :(得分:0)

使用this class将查询转换为树阵列。

An example of use.

这很简单:

$sql_query = "SELECT field1, field2 FROM table WHERE field3='val1' AND field4=5 OR field5='val2';";

$query2tree = new dqml2tree($sql_query);
$sql_tree = $query2tree->make();

print_r($sql_tree);