[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Помогите создать функцию наполнения сложного масси
lecherg
CREATE TABLE `divs` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`id_parent` int(11) NOT NULL,
`name` varchar(255) NOT NULL,
`type` varchar(22) NOT NULL,
`lang` int(1) NOT NULL DEFAULT '1',
PRIMARY KEY (`id`)
)
ENGINE=InnoDB DEFAULT CHARSET=utf8 ;

INSERT INTO `divs` (`id`, `id_parent`, `name`, `type`, `lang`) VALUES
(1, 0, 'Главная', '1', 1),
(
3, 0, 'Новости', '2', 1),
(
4, 0, 'О компании', '1', 1),
(
5, 0, 'Клиенты', '1', 1),
(
6, 0, 'Контакты', '1', 1),
(
10, 4, 'История', '1', 1),
(
11, 4, 'Учредители', '1', 1),
(
24, 10, 'Начало', '1', 1),
(
25, 10, 'Середина', '1', 1),
(
26, 10, 'Конец', '1', 1);


Необходимо сделать функцию, которая создает массив вида

Array
(
[
0] => Array
(
[
id] => 1
[id_parent] => 0
[name] => Главная
[type] => 1
[lang] => 1
)

[
1] => Array
(
[
id] => 3
[id_parent] => 0
[name] => Новости
[type] => 1
[lang] => 1
)

[
2] => Array
(
[
id] => 4
[id_parent] => 0
[name] => О компании
[type] => 1
[lang] => 1
[parent] => Array
(
[
0] => Array
(
[
id] => 10
[id_parent] => 4
[name] => История
[type] => 1
[lang] => 1
[parent] => Array
(
[
0] => Array
(
[
id] => 24
[id_parent] => 10
[name] => Начало
[type] => 1
[lang] => 1
)

[
1] => Array
(
[
id] => 25
[id_parent] => 10
[name] => Середина
[type] => 1
[lang] => 1
)

[
2] => Array
(
[
id] => 26
[id_parent] => 10
[name] => Конец
[type] => 1
[lang] => 1
)
)
)

[
1] => Array
(
[
id] => 11
[id_parent] => 4
[name] => Учредители
[type] => 1
[lang] => 1
)
)

)
[
3] => Array
(
[
id] => 5
[id_parent] => 0
[name] => Контакты
[type] => 1
[lang] => 1
)

)


Притом база может быть любого уровня вложенности. Помогите, не могу сделать...
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.