У меня есть массив, полный таких элементов:
array(
array(
'id' => 1,
'name' => 'parent 1',
'parent_id' => null
),
array(
'id' => 2,
'name' => 'child of parent 1',
'parent_id' => 1
),
array(
'id' => 3,
'name' => 'grand child of parent 1',
'parent_id' => 2
),
array(
'id' => 4,
'name' => 'parent 2',
'parent_id' => null
),
array(
'id' => 5,
'name' => 'child of parent 2',
'parent_id' => 4
),
);
И мой вопрос: как я могу построить дерево для известного ребенка? Например, если я знаю, что идентификатор равен 3, мне нужно получить массив элементов, включая идентификаторы 1,2 и 3.
Спасибо.