📜  如何使用PHP计算目录中的文件?

📅  最后修改于: 2022-05-13 01:54:10.697000             🧑  作者: Mango

如何使用PHP计算目录中的文件?

PHP包含许多函数,如 count()、iterator_count()、glob()、openddir()、readdir()、scandir() 和 FilesystemIterator() 来计算目录中的文件数。

count()函数: count() 函数是一个数组函数,用于对数组中的所有元素或对象中的某些内容进行计数。此函数使用 COUNT_RECURSIVE 作为递归计数数组的模式,这对于计算多维数组的所有元素很有用。

句法:

int count( mixed $array_or_countable, int $mode = COUNT_NORMAL )

glob()函数: glob()函数是一个文件系统函数,它根据 libc glob()函数使用的规则搜索所有可能的路径名匹配模式。

句法:



glob( string $pattern, int $flags = 0 )

程序1:该程序使用glob() 和count()函数对目录中的所有文件进行计数。


输出:

20 files

openddir()函数: openddir()函数用于打开目录句柄。要打开的目录的路径作为参数发送给 opendir()函数,成功时返回目录句柄资源,失败时返回 FALSE。

句法:

opendir( string $path, resource $context )

readdir()函数: readdir()函数是一个目录函数,它从目录句柄中读取条目,这些条目按照文件系统存储的顺序返回。

句法:

readdir( resource $dir_handle )

程序2:该程序使用openddir() 和readdir()函数来统计目录中的所有文件。


输出:



20 files

scandir()函数: scandir()函数用于返回指定目录的文件和目录数组。 scandir()函数列出指定路径中存在的文件和目录。

句法:

scandir( string $directory, int $sorting_order = SCANDIR_SORT_ASCENDING, resource $context )

程序 3:该程序使用 scandir() 和 count()函数对目录中的所有文件进行计数。


输出:

20 files

FilesystemIterator()函数: FilesystemIterator::__construct()函数用于从路径创建新的文件系统迭代器。

句法:

FilesystemIterator::__construct( string $path, 
      int $flags = FilesystemIterator::KEY_AS_PATHNAME 
      | FilesystemIterator::CURRENT_AS_FILEINFO 
      | FilesystemIterator::SKIP_DOTS )

iterator_count()函数: iterator_count()函数是SPL,用于对迭代器元素进行计数。

句法:

int iterator_count( $iterator )

程序4:该程序使用FilesystemIterator() 和iterator_count()函数对目录中的所有文件进行计数。


输出:

20 files