English | 简体中文 | 繁體中文
查询

FilesystemIterator::setFlags()函数—用法及示例

「 设置FilesystemIterator对象的标志位 」


函数名:FilesystemIterator::setFlags()

函数说明:该函数用于设置FilesystemIterator对象的标志位。

参数:

  • flags:要设置的标志位,可以是以下常量的组合:
    • FilesystemIterator::CURRENT_AS_FILEINFO:将当前项作为SplFileInfo对象返回。
    • FilesystemIterator::CURRENT_AS_PATHNAME:将当前项作为字符串返回。
    • FilesystemIterator::KEY_AS_PATHNAME:将键名作为字符串返回。
    • FilesystemIterator::KEY_AS_FILENAME:将键名作为文件名返回。

返回值:无

示例:

// 创建FilesystemIterator对象
$iterator = new FilesystemIterator('/path/to/directory');

// 设置标志位,将当前项作为SplFileInfo对象返回,并将键名作为文件名返回
$iterator->setFlags(FilesystemIterator::CURRENT_AS_FILEINFO | FilesystemIterator::KEY_AS_FILENAME);

// 遍历目录中的文件和子目录
foreach ($iterator as $fileinfo) {
    // 输出文件名和扩展名
    echo $fileinfo->getFilename() . ' (' . $fileinfo->getExtension() . ')<br>';
}

在上面的示例中,我们首先创建了一个FilesystemIterator对象,指定了要遍历的目录路径。然后,使用setFlags()函数设置了标志位,将当前项作为SplFileInfo对象返回,并将键名作为文件名返回。最后,使用foreach循环遍历目录中的文件和子目录,输出每个文件的文件名和扩展名。

注意:在使用setFlags()函数之前,必须先创建FilesystemIterator对象。

补充纠错
热门PHP函数
分享链接