如何仅列出目录递归列表中选定的级别?

发布于 2024-11-04 23:50:12 字数 187 浏览 1 评论 0原文

我使用此代码: PHP 按类型对目录中的文件进行排序

但它会打开所有目录。我只希望打开指向所选项目的目录。

I use this code: PHP Sort Files In Directory by Type

But it opens up all directories. I just want directories that leads to the selected item to be open.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

玩套路吗 2024-11-11 23:50:12

如果我理解正确,您不想递归地显示目标下的目录。我认为您可以从上面的代码中删除递归调用,如下所示:

/* Rendering */
function list_dir($path)
{

    ...

    foreach($items as $item)
    {
        if ($item->type=='dir')
        {
            echo '<li class="folder"><a href="#" class="toggle">'.$item->entry.'</a></li>';
            //list_dir($item->full_path); REMOVE THIS
        }
        else
        {
            echo '<li class="file"><a href="file-details.php?file='.urlencode($item->full_path).'" class="arrow_icon modal">'.$item->entry.'</a></li>';
        }
    }

    echo "</ul>";

}

If im understanding you correctly, you don't want to recursively display the directories under the target. I think you would remove the recursive call from the code above like this :

/* Rendering */
function list_dir($path)
{

    ...

    foreach($items as $item)
    {
        if ($item->type=='dir')
        {
            echo '<li class="folder"><a href="#" class="toggle">'.$item->entry.'</a></li>';
            //list_dir($item->full_path); REMOVE THIS
        }
        else
        {
            echo '<li class="file"><a href="file-details.php?file='.urlencode($item->full_path).'" class="arrow_icon modal">'.$item->entry.'</a></li>';
        }
    }

    echo "</ul>";

}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文