📅  最后修改于: 2023-12-03 15:18:23.079000             🧑  作者: Mango
key()
函数用于返回当前文件迭代器指向的文件的键名。
public function key ( void ) : string
该函数不接受任何参数。
key()
函数返回当前文件迭代器指向文件的键名。如果指针已经到达文件集合的末尾,则返回 NULL
。
考虑以下代码:
$iterator = new FilesystemIterator('/path/to/folder');
foreach ($iterator as $key => $fileInfo) {
echo $key . ' : ' . $fileInfo->getFilename() . "\n";
}
在上述代码中,我们将要遍历 /path/to/folder
目录下的所有文件,并打印每个文件的键名及其文件名。
为了实现这一目的,我们使用 foreach
循环来迭代遍历文件。我们通过 $key
变量获取当前文件的键名,通过 $fileInfo
变量获得当前的文件信息对象。使用 getFilename()
方法获取文件名。
当我们运行以上代码,它将会输出以下结果:
0 : file1.txt
1 : file2.jpg
2 : file3.png
上述结果表明,key()
函数返回了整数类型的文件键名。在迭代器迭代的过程中,它会依次递增这些键名。
请注意,在使用 key()
函数和 foreach
结构迭代文件时,您可能会遇到键名与该文件在文件集合中的实际位置不匹配的情况。这是由于文件集合重新排序和重建缓存导致的。