Php 如何在目录递归列表中仅列出所选级别?

Php 如何在目录递归列表中仅列出所选级别?,php,recursion,treeview,arraylist,recursive-datastructures,Php,Recursion,Treeview,Arraylist,Recursive Datastructures,我使用以下代码: 但它会打开所有目录。我只想打开指向所选项目的目录。如果我理解正确,您不想递归显示目标下的目录。我认为您可以从上面的代码中删除递归调用,如下所示: /* Rendering */ function list_dir($path) { ... foreach($items as $item) { if ($item->type=='dir') { echo '<li class="fol

我使用以下代码:


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

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

/* 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>";

}
/*渲染*/
函数列表\u dir($path)
{
...
foreach($items作为$item)
{
如果($item->type=='dir')
{
echo'
  • ; //列出目录($item->full\u path);删除此目录 } 其他的 { echo'
  • ; } } 回声“”; }
    我希望递归函数在那里。但当我到达页面时,文件夹必须关闭。当我点击一个文件夹时,页面将被重新加载,文件夹将被打开。在上面的代码中,使用递归功能,所有子文件夹也将打开。我想要导航功能。这不是一个站点地图。哦,你需要为此编写javascript。您链接到的原始帖子说,他使用jQuery打开和关闭文件夹,“切换”、“文件夹”和“树视图”类是您需要查看的目标。我建议你给他发消息,看看你是否能得到js。