|
|
|
| Всем привет!
Есть массив, который вывел из бд. В базе в одной таблице хранятся эти значения, имеется уникальный айди и колонка, которая определяет к какой категории относится тема. То есть если это родитель то ноль, если нет, то цифра, которая совпадает с айди
Array
(
[0] => Array
(
[products_id] => 1
[products_parent_id] => 0
[products_product_name] => ПК iPension
)
[1] => Array
(
[products_id] => 2
[products_parent_id] => 0
[products_product_name] => ПК iPension ТАЦ
)
[2] => Array
(
[products_id] => 3
[products_parent_id] => 1
[products_product_name] => iPension – базовая поставка
)
[3] => Array
(
[products_id] => 4
[products_parent_id] => 1
[products_product_name] => iPension – базовая поставка
)
)
|
Он представляет собой древовидную систему, только у меня не получается его правильно обработать. В конечном результате массив должен иметь следующий вид
Array
(
[1] => Array
(
[ПК iPension] => Array
(
[products_id] => 3
[products_parent_id] => 1
[products_product_name] => iPension – базовая поставка
)
)
[1] => Array
(
[ПК iPension] => Array
(
[products_id] => 4
[products_parent_id] => 1
[products_product_name] => iPension – базовая поставка
)
)
[2] => Array
(
[ПК iPension ТАЦ] => Array
(
)
)
|
Помогите или натолкните на мысль как это правильно сделать?
Заранее спасибо | |
|
|
|
|
|
|
|
для: mister_pipin
(10.04.2013 в 16:53)
| | Во-первых:
[1] => Array
(
[ПК iPension] => Array
(
[products_id] => 3
[products_parent_id] => 1
[products_product_name] => iPension – базовая поставка
)
)
[1] => Array
(
[ПК iPension] => Array
(
[products_id] => 4
[products_parent_id] => 1
[products_product_name] => iPension – базовая поставка
)
)
| -это не возможно! Каким образом у вас в массиве должно быть одновременно 2 элемента с одинаковым индексом???
Во-вторых ваш второй массив - это не древовидная структура, а что-то не понятное.
Древовидная выглядела бы как-то так:
Array
(
[1] => Array
(
[name] => ПК iPension
[products] => array
(
[3] => iPension – базовая поставка
[4] => iPension – базовая поставка
)
)
[2] => Array
(
[name] => ПК iPension ТАЦ
[products] => Array ( )
)
)
|
В-третьих вы что, извлекаете всю таблицу и потом перелопачиваете?
Так можно только если в ней не много записей. Иначе будет очень медленно.
Ну и на счет "как?".....
циклами. | |
|
|
|