неизменный и просто добавить элементы без родителей в новый массив, а затем вернуть этот массив.
я есть такой список:
array(
array(id=>100, parentid=>0, name=>'a'),
array(id=>101, parentid=>100, name=>'a'),
array(id=>102, parentid=>101, name=>'a'),
array(id=>103, parentid=>101, name=>'a'),
)
но намного больше, поэтому мне нужен эффективный способ превратить это в древовидную структуру, подобную этой:
array(
id=>100, parentid=>0, name=>'a', children=>array(
id=>101, parentid=>100, name=>'a', children=>array(
id=>102, parentid=>101, name=>'a',
id=>103, parentid=>101, name=>'a',
)
)
)
я не могу использовать такие вещи, как вложенные множества или подобные вещи, потому что я могу добавлять левые и правые значения в мою базу данных. есть идеи?