文件夹结构中的角树

时间:2019-12-18 15:05:27

标签: php angular typescript directory tree

我正在尝试创建一棵显示在前端的树。
用户提供一个位置,后端可以读取该位置并从中创建树并将其发送回去。 这棵树看起来可以有很多不同的方式。我如何获得它,以便前端读取它并为此创建正确的树?
示例:
前端发送路径:/usr/test/dir1/
后端使用以下功能读取该信息:

function dirtree($dir)
{
    $dh = scandir($dir);
    $return = array();

    foreach ($dh as $folder) {
        if ($folder != '.' && $folder != '..') {
            if (is_dir($dir . '/' . $folder)) {
                $return[] = array($folder => $this->dirtree($dir . '/' . $folder));
            } else {
                $return[] = $folder;
            }
        }
    }
    return $return;
}

后端返回类似:

{
    "maindir": [
        ".DS_Store",
        {
            "dir1": []
        },
        {
            "subdir1": [
                ".DS_Store",
                {
                    "subdir2": [
                        {
                            "subdir3": []
                        },
                        {
                            "subdir4": []
                        }
                    ]
                },
}

如何将其翻译为前端? 或如何向其中添加子类型?

0 个答案:

没有答案