如何计算目录中的文件数?

时间:2017-07-17 05:15:45

标签: php laravel-5.2

我想知道如何使用Laravel 5.2计算目录中的文件数:

$folderPath="upload/";
$countFile=0;
$totalFiles=glob($folderPath."*");
if($totalFiles){
    $countFile=count($totalFiles);
}
print_r($countFile);

这不适合我。

2 个答案:

答案 0 :(得分:1)

我不确定L5.2,但我相信你可以使用存储外观

$files = Storage::files($directoryPath);

这将返回所有文件,您可以直接计算吗?

如果您想要递归,请使用allFiles()

答案 1 :(得分:0)

根据5.6 documentation,你可以使用filesallFiles来计算目录中的文件数量(但是,此功能自5.0以来一直存在,而您的问题是具体的关于5.2)。

filesallFiles之间的区别在于allFiles将递归搜索与files不同的子目录。再次,根据文档:

  

files方法返回给定目录中所有文件的数组。如果要检索给定目录(包括所有子目录)中的所有文件的列表,可以使用allFiles方法:

以及提供的示例代码:

use Illuminate\Support\Facades\Storage;

$files = Storage::files($directory);

$files = Storage::allFiles($directory);

注意:这个答案是作为旧答案的更完整版本提供的(我指出了正确的方向,但我个人想确认它仍然有效)与链接文档/代码来自文档的实际答案。