列出文件夹和子文件夹但不列出文件

竹子

我研究了但没有找到我的答案,你知道如何找到所有这样的文件夹和子文件夹而不是文件吗?

<ul>
   <li><a href="/Folder1">Folder 1</a></li>
       <ul>
           <li><a href="/Folder1/Subfolder1">Subfolder 1</a></li>
           <li><a href="/Folder1/Subfolder2">Subfolder 2</a></li>
           <li><a href="/Folder1/Subfolder3">Subfolder 3</a></li>
       </ul>
   <li><a href="/Folder2">Folder 2</a></li>
       <ul>
           <li><a href="/Folder2/Subfolder1">Subfolder 1</a></li>
           <li><a href="/Folder2/Subfolder2">Subfolder 2</a></li>
       </ul>
   <li><a href="/Folder3">Folder 3</a></li>
</ul>

我在 stackoverflow 上找到了这段代码,但它显示了文件,我不知道如何为 a href 设置路径文件夹:

function listFolderFiles($dir){
$ffs = scandir($dir);

unset($ffs[array_search('.', $ffs, true)]);
unset($ffs[array_search('..', $ffs, true)]);

// prevent empty ordered elements
if (count($ffs) < 1)
    return;

echo '<ol>';
foreach($ffs as $ff){
    echo '<li>'.$ff;
    if(is_dir($dir.'/'.$ff)) listFolderFiles($dir.'/'.$ff);

    echo '</li>';
}
echo '</ol>';
}
listFolderFiles('/Applications/MAMP/htdocs/Test');
克里斯·辛纳尔斯基

只需检查文件是否为目录:

foreach($ffs as $ff){

  if (!is_dir($ff)) {
     continue;
  }

  echo '<li>'.$ff;
  if(is_dir($dir.'/'.$ff)) listFolderFiles($dir.'/'.$ff);
  echo '</li>';
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章