gpt4 book ai didi

php 递归 - 显示为标题的目录名称

转载 作者:搜寻专家 更新时间:2023-10-31 20:46:24 25 4
gpt4 key购买 nike

我希望以无序列表的形式列出文件夹中的所有目录和子目录。
找到下面的代码来生成正确的列表。但我需要两件事的帮助:

<?php
function listFolderFiles($dir){
$ffs = scandir($dir);
echo '<ul>';
foreach($ffs as $ff){
if($ff != '.' && $ff != '..'){
echo '<li>'.$ff;
if(is_dir($dir.'/'.$ff)) listFolderFiles($dir.'/'.$ff);
echo '</li>';
}
}
echo '</ul>';
}

listFolderFiles('../targetfolder');

?>


所有目录名称都应显示为标题,如下所示:

<li> <h2> directory name </h2> <li> 

和子目录名称,如下所示:

<li> <h3> sub directory name </h3> </li>


在目标目录中,有两个主要目录。他们的名字不应出现在列表中 -

我对 php 的经验非常有限 :)任何帮助将不胜感激!

最佳答案

试试这个

function listFolderFiles($dir){
static $level = 0;
$level++;
$ffs = scandir($dir);
echo '<ul>';
foreach($ffs as $ff){
if($ff != '.' && $ff != '..'){
echo '<li>';
if(is_dir($dir.'/'.$ff)) {
$h_start = ($level == 1) ? '<h2>' : '<h3>';
$h_close = ($level == 1) ? '</h2>' : '</h3>';
echo $h_start.$ff.$h_close;
listFolderFiles($dir.'/'.$ff);
} else {
echo $ff;
}
echo '</li>';
}
}
echo '</ul>';
$level--;
}

关于php 递归 - 显示为标题的目录名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12651846/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com