PHP 中的文件操作:遍历当前目录中的文件312


PHP 提供了一系列函数,使您可以轻松高效地处理文件系统中的文件。在本文中,我们将重点关注在 PHP 中遍历当前目录中的文件的方法。

glob() 函数

glob() 函数是遍历当前目录中文件的最简单方法之一。它接受一个模式字符串作为参数,该字符串指定要查找的文件的名称和扩展名。例如,要查找当前目录中所有具有 .txt 扩展名的文件,可以使用以下代码:```php
$files = glob("*.txt");
```

glob() 函数返回一个包含匹配文件路径的字符串数组。

scandir() 函数

scandir() 函数返回一个包含当前目录中所有文件的数组。与 glob() 函数不同,scandir() 函数不会应用任何过滤器,因此它将返回目录中的所有文件,包括隐藏文件。以下是使用 scandir() 函数遍历当前目录中所有文件的示例:```php
$files = scandir(".");
```

scandir() 函数返回一个包含文件名的字符串数组。

DirectoryIterator 类

DirectoryIterator 类允许您以面向对象的方式遍历目录。它提供了一组方法来获取有关目录中文件的信息,例如文件名、大小和最后修改时间。以下是如何使用 DirectoryIterator 类遍历当前目录中的所有文件:```php
$dir = new DirectoryIterator(".");
foreach ($dir as $file) {
echo $file->getFilename() . "";
}
```

DirectoryIterator 类返回一个 DirectoryIterator 对象的数组,每个对象都代表目录中的一个文件。

SplFileInfo 类

SplFileInfo 类提供了有关文件系统中文件的详细元数据。它包括有关文件大小、创建日期和所有者的信息。以下是如何使用 SplFileInfo 类遍历当前目录中的所有文件:```php
$dir = new DirectoryIterator(".");
foreach ($dir as $file) {
$fileInfo = new SplFileInfo($file->getPathname());
echo $fileInfo->getFilename() . " - " . $fileInfo->getSize() . " bytes";
}
```

SplFileInfo 类返回一个 SplFileInfo 对象的数组,每个对象都代表目录中的一个文件。

PHP 提供了多种方法来遍历当前目录中的文件。glob() 函数是查找匹配指定模式的文件的简单方法,而 scandir() 函数返回目录中所有文件的列表。DirectoryIterator 类和 SplFileInfo 类提供了更高级的遍历和文件元数据的检索。

根据不同的需求,您可以选择最适合您的情况的方法。

2024-10-27


上一篇:PHP 文件上传路径

下一篇:PHP 数组序列:探索强大的数据结构