В настоящее время я разрабатываю иерархию категорий, и я понял, как создать дерево treversal, я думаю. Но мне нужно добавить новый узел в эту иерархическую функцию usign 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/ –
@foo: хорошая точка, но не менее 90 могут закрыть случай и выбрать ответ. – Bytemain