在数组中获取目录中具有创建日期的所有文件



可能重复:
文件创建时间

我想得到一个目录中的所有文件,以及它在数组中的创建日期。

我看到了scandir函数,但它甚至返回了我不想要的目录。我还发现filemtime($filename)函数可以返回文件创建日期。只是无法将其组合在一起。

在PHP>5的这些日子里,您应该使用所提供的类来处理这类事情。对于这个特定的任务,您应该使用FilesystemIterator,例如:-

$iterator = new FilesystemIterator('D:/dev/');
foreach($iterator as $fileInfo){
    if($fileInfo->isFile()){
        $cTime = new DateTime();
        $cTime->setTimestamp($fileInfo->getCTime());
        echo $fileInfo->getFileName() . " file Created " . $cTime->format('Y-m-d h:i:s') .  "<br/>n";
    }
    if($fileInfo->isDir()){
        $cTime = new DateTime();
        $cTime->setTimestamp($fileInfo->getMTime());
        echo $fileInfo->getFileName() . " dir Modified " . $cTime->format('Y-m-d h:i:s') . "<br/>n";
    }
}

这里$fileInfo是SplFileInfo的一个实例,它可以为您提供您想要的文件或目录的所有信息。

if ($handle = opendir('/path/to/files')) {
    while (false !== ($file = readdir($handle))) { 
        echo filemtime($file)."&nbsp;&nbsp;".$file;
     }
    closedir($handle); 
}

使用scandir获取主目录的所有文件和子目录

然后使用php的is_file函数。

如果你想访问特定的扩展文件,请使用php的glob函数

以下是示例:

如何在PHP中使用scandir只获取图像?

我希望这能有所帮助。

相关内容

  • 没有找到相关文章

最新更新