用PHP获取包括毫秒在内的照片拍摄时间的精确日期时间信息

6

我正在使用PHP Laravel开发一个涉及一些处理的Web应用程序。现在,我正在尝试从用户上传的图像文件中提取所花费的时间。我可以使用exif_read_data函数提取数据,如下所示:

$exif_data = exif_read_data($file);
echo $exif_data['DateTimeOriginal'];

当我检索时,格式为YYYY:MM:DD H:m:s。但是我还需要知道秒数后面的毫秒/纳秒。那么,有没有一种方法可以从图像文件中检索拍摄时间的更精确时间,并如何实现?


microtime(); 返回当前时间,除非图像已保存更精确的时间数据。请参考 http://php.net/manual/en/function.microtime.php。 - pokeybit
不,我想从照片的exif /元数据中检索拍摄时间。 - Wai Yan Hein
看起来在exif数据中没有超过“秒”的字段。https://www.awaresystems.be/imaging/tiff/tifftags/privateifd/exif.html - chris85
@chris85 谢谢您提供的链接。您链接的文档确实提到了 SubSecTime SubSecTimeOriginal SubSecTimeDigitized - Stéphane Gourichon
1个回答

9

您应该能够从次秒标签中获得毫秒/纳秒分辨率: SubsecTime SubsecTimeOriginal SubsecTimeDigitized ,它们是EXIF信息的数组键。


1
非常感谢,那帮了我很多。也很高兴认识你。 - Wai Yan Hein
2
这是标准的一部分。https://www.dpreview.com/forums/post/21773296提到了2002年的http://www.exif.org/Exif2-2.PDF,其中在第24页指定了“SubSecTime”、“SubSecTimeOriginal”和“SubSecTimeDigitized”。 - Stéphane Gourichon

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接