计算php目录中的文件数量?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (19)

我正在做一个稍微新的项目。我想知道如何使它可以计算出某个目录中有多少个文件。

<div id="header">
<?php 
    $dir = opendir('uploads/'); # This is the directory it will count from
    $i = 0; # Integer starts at 0 before counting

    # While false is not equal to the filedirectory
    while (false !== ($file = readdir($dir))) { 
        if (!in_array($file, array('.', '..') and !is_dir($file)) $i++;
    }

    echo "There were $i files"; # Prints out how many were in the directory
?>
</div>

提问于
用户回答回答于

可以简单地执行以下操作:

$fi = new FilesystemIterator(__DIR__, FilesystemIterator::SKIP_DOTS);
printf("There were %d Files", iterator_count($fi));
用户回答回答于

你可以这样:

$directory = "/path/to/dir/";
$filecount = 0;
$files = glob($directory . "*");
if ($files){
 $filecount = count($files);
}
echo "There were $filecount files";

"*"如果你想要的话,可以将其更改为特定的文件类型"*.jpg"或者你可以按以下方式做多个文件类型:

glob($directory . "*.{jpg,png,gif}",GLOB_BRACE)

GLOB_BRACE标志展开{a,b,c}以匹配“a”、“b”或“c”。

扫码关注云+社区