Php 回显文件夹中的所有文件夹名称
我想打印父文件夹中的所有文件夹名称。目前我面临的问题是,尽管我有400多个文件夹,但其中只有257个正在打印。同样,这与权限无关 请在下面找到我的代码:Php 回显文件夹中的所有文件夹名称,php,Php,我想打印父文件夹中的所有文件夹名称。目前我面临的问题是,尽管我有400多个文件夹,但其中只有257个正在打印。同样,这与权限无关 请在下面找到我的代码: $newdir = "content/"; $dircnt = 0; // Open a known directory, and proceed to read its contents if (is_dir($newdir)) { if ($dh = opendir($newdir)) { while
$newdir = "content/";
$dircnt = 0;
// Open a known directory, and proceed to read its contents
if (is_dir($newdir)) {
if ($dh = opendir($newdir)) {
while (($file = readdir($dh)) !== false) {
$dircnt++;
if(filetype($newdir. $file) == 'dir') {
echo "filename: $file : filetype: " . filetype($newdir. $file) . "dircnt:" .$dircnt. "<br>";
}
}
closedir($dh);
}
}
}
$newdir=“content/”;
$dircnt=0;
//打开已知目录,然后继续读取其内容
if(is_dir($newdir)){
如果($dh=opendir($newdir)){
while(($file=readdir($dh))!==false){
$dircnt++;
如果(文件类型($newdir.$file)='dir'){
echo“filename:$file:filetype:”.filetype($newdir.$file)。“dircnt:”.dircnt.“
”;
}
}
closedir($dh);
}
}
}
您可以使用glob()
函数-返回一个包含匹配文件/目录的数组,如果没有匹配的文件,则返回一个空数组,否则返回FALSE
$filesDirectories = glob($newdir.'*', GLOB_BRACE);
foreach($filesDirectories as $key=>$file) {
echo "$file size " . filesize($file) . "\n";
}
我会使用glob:
$newdir = "content/";
$dirs = glob($newdir.'*',GLOB_ONLYDIR);
foreach($dirs as $index=>$dir){
echo "filename ". $dir." filetype ".filetype($newdir.$dir)." dircnt:".($index+1)."<br/>";
}
$newdir=“content/”;
$dirs=glob($newdir.'*',glob_ONLYDIR);
foreach($dirs作为$index=>$dir){
回显“filename.”$dir.“filetype.”文件类型($newdir.$dir)。“dircnt:”($index+1)。“
”;
}
循环是否停止或跳过条目?@Bart Friederichs:循环只是停止,因为当我在循环中回显某个内容时,它一直执行到第259个文件夹(257个文件夹以及“.”和“…”),您如何知道折叠数为400+,$dircnt
变量?然后您可以放置$dircnt++代码>错误。您的日志怎么说?尝试is_dir
而不是filetype
它给出了与我提到的相同的结果。