Дерево категорий в массиве

OlegEF

Новичок
А логично ли что родитель еще не родился но уже родил ребенка? =)
Отсортируй свой массив по id.
Отсортировав по id получаем:
PHP:
$test = array(
(array('id'=>268,'parent'=>406,'title'=>'level_0_406_268')),
(array('id'=>269,'parent'=>268,'title'=>'level_0_406_268_269')),
(array('id'=>270,'parent'=>268,'title'=>'level_0_406_268_270')),
(array('id'=>271,'parent'=>268,'title'=>'level_0_406_268_271')),
(array('id'=>272,'parent'=>268,'title'=>'level_0_406_268_272')),
(array('id'=>273,'parent'=>268,'title'=>'level_0_406_268_273)')),
(array('id'=>274,'parent'=>406,'title'=>'level_0_406_274')),
(array('id'=>406,'parent'=>0,'title'=>'level_0_406')),
(array('id'=>407,'parent'=>406,'title'=>'level_0_406_407')),
(array('id'=>500,'parent'=>407,'title'=>'level_0_406_407_500')),
);
т.е. родитель 406 добавляется в массив уже после добавления наследников.
 

KorP

Новичок
OlegEF
а как у тебя в базе чилд добавляется раньше родителя? и как у этого чилда вообще может быть родитель в таком случае?
 

Single

пилот капсулы
OlegEF
а как у тебя в базе чилд добавляется раньше родителя? и как у этого чилда вообще может быть родитель в таком случае?
Перемещение элементов по дереву, отсюда id 268 parent 406 сначало могло быть скажем id 268 parent 0.
 
  • Like
Реакции: craz

Single

пилот капсулы
Кхм. пересобрать дерево в виде NS.
Из того что есть сейчас врят ли получится сделать что то вменяемое, либо переиндексация дерева либо уж совсем не красивые решения что бы собрать массив в дерево.
 
Сверху