递归的PHP菜单

时间:2014-01-07 16:09:12

标签: php

我一直在寻找一段时间,但似乎无法找到问题的答案。

我有一个深层嵌套数组,我需要将其转换为嵌套菜单。

https://gist.github.com/anonymous/98e0dcf4f2aef40a1da6

我希望它最终会像以下那样。

https://gist.github.com/anonymous/a0dd4c7d047f11a5ce82

class foo {

    function NavigationBuild($routes, $child = false) {
        if ($child) {
            foreach($routes as $route = > $row) {
                if (is_array($row['children'])) {
                    $output. = self::NavigationBuild($row['children'], true);
                } else {
                    $output. = "<li>".$val['route']."MEEEEE</li>";
                }

            }

        } else {
            $output. = '<ul>';
            foreach($routes as $route = > $row) {
                if (!strlen($row['parent'])) {
                    $output. = "<li>".$route."</li>";
                }
                foreach($row['children'] as $key = > $val) {
                    if (is_array($val['children'])) {
                        $output. = self::NavigationBuild($val['children'], true);
                    } else {
                        $output. = "<li>".$val['route']."MEEEEE</li>";
                    }
                }

            }
            $output. = '</ul>';
        }
        return $output;
    }
}

1 个答案:

答案 0 :(得分:0)

想出来 - 似乎需要一些睡眠。

感谢所有有用的输入