Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 回显文件夹中的所有文件夹名称_Php - Fatal编程技术网

Php 回显文件夹中的所有文件夹名称

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

我想打印父文件夹中的所有文件夹名称。目前我面临的问题是,尽管我有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 (($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
它给出了与我提到的相同的结果。