PHP - 使用Fulifilm照片损坏exif数据错误

时间:2012-07-20 17:32:11

标签: php gps exif

PHP版本5.3.10

简而言之,我无法从我的照片中获取所有EXIF数据 - 它说它们已损坏 - 但是另一个PHP可以获取所有数据,所以我确信这是可能的,但我不知道不知道怎么做。现在更详细的版本......

我有一个脚本只是为了从我的相机中查看给定JPG文件的所有EXIF数据。它 看起来像这样......

$exif_data = exif_read_data ('TEST.JPG', 0, TRUE); 
foreach ($exif_data as $key => $section) {
    foreach ($section as $name => $val) {
        echo "$key.$name: $val<br />\n";
    }
}

这适用于我的最后一台相机。但是,当我从我的新FujiFilm相机对任何JPG运行时,我收到上面列表中第一行的错误消息..

Warning: exif_thumbnail(TEST.JPG) [exif_read_data]: corrupt EXIF header: maximum directory nesting level reached in (script name) on line (relevant line)

然后输出EXIF数据的不完整列表。

我猜第一个对此的反应是“你的文件损坏了”但如果我将其上传到http://exifdata.com/index.php那么它会列出所有EXIF数据(包括我真正感兴趣的GPS数据)在)。那个网站显然也运行在PHP上,所以我建议使用PHP从中获取GPS数据确实是可能的。

我试过谷歌搜索错误消息,但我得到的是一些旧的2005或2007 PHP错误,以及一个类似的无法回答的stackoverflow线程 - Issues extracting exif data for exif 2.3 using PHP Version 5.2.9

所以...任何想法?

1 个答案:

答案 0 :(得分:1)

我也有一台Fujifilm相机有同样的问题,但我想我找到了解决方案,我在这里提出了一个PHP错误报告:https://bugs.php.net/bug.php?id=66443

如果您可以从源代码编译自己的PHP(或说服您的webhost为您这样做),这是一个简单的解决方法。