Пример дерева:
1.
1.1.
1.2.
2.
Сама функция:
public static function getTree($tree, $parent_id = 0)
{
$result = array();
foreach ($tree as $key => $node) {
$res['title'] = $node->title;
$res['li_attr']['id'] = $node->id;
if ($node->parent_id == $parent_id) {
if ($node->has_children())
$res['children'] = self::getTree($tree, $node->id);
$result[] = $res;
}
}
return $result;
}
Если юзаю как есть - ухожу в глубину дерева и не возвращаюсь назад, т.е. выводятся 1., 1.1., 1.2; 2. не выводится. Если убираю вывод детей - то нормально выводятся оба родителя (1. и 2.).
Где не прав?