我目前正在开发一个类别层次结构,并且我认为要创建树的遍历。但是我需要在这个层次结构中添加一个新的节点来使用PHP函数。使用PHP/MySQL从零开始创建树遍历层次结构
问题是,rebuild_tree函数将足够好(换句话说,大树高效)。
样品查询:
CREATE TABLE `t_categories`(
`id` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
`title` VARCHAR(45) NOT NULL,
`lft` INTEGER UNSIGNED NOT NULL,
`rght` INTEGER UNSIGNED NOT NULL,
PRIMARY KEY (`id`)
);
INSERT INTO t_categories (title, lft, rght) VALUES ('Cat 1',1,16);
INSERT INTO t_categories (title, lft, rght) VALUES ('Cat 2',2,3);
INSERT INTO t_categories (title, lft, rght) VALUES ('Cat 3',4,7);
INSERT INTO t_categories (title, lft, rght) VALUES ('Cat 4',5,6);
INSERT INTO t_categories (title, lft, rght) VALUES ('Cat 5',8,13);
INSERT INTO t_categories (title, lft, rght) VALUES ('Cat 6',9,12);
INSERT INTO t_categories (title, lft, rght) VALUES ('Cat 7',10,11);
INSERT INTO t_categories (title, lft, rght) VALUES ('Cat 8',14,15);
表结果看起来像:
ID TITLE LFT RGHT
1 Cat1 1 16
2 Cat2 2 3
3 Cat3 4 7
4 Cat4 5 6
5 Cat5 8 13
6 Cat6 9 12
7 Cat7 10 11
8 Cat8 14 15
我给样本数据上面,但我需要完全从头开始创建新的节点为好。
那么,我怎样才能使用PHP功能添加一个新的节点到这棵树上,这个功能可以与大型树木一起使用?
,如果你正在寻找管理大型树木的有效方式,那么你最好从嵌套组更好地切换到邻接表 - http://explainextended.com/2009/09/ 24/adjacency-list-vs-nested-sets-postgresql/ – 2011-03-08 12:11:44
@foo:好点但至少90可以关闭案件并选择一个答案。 – Bytemain 2011-03-16 20:04:25