exif_read_data:关键字解码错误


exif_read_data: keywords decoded incorrectly

我使用exif_read_data()从上传的图片中提取exif数据。这在我的Windows机器上运行良好,但在我的Mac和最新的XAMPP上,除了关键字/标签之外,所有字段似乎都被正确提取。如果我在文件中查看,相机模型(正确提取)似乎是用ASCII编码的(每个字符一个字节)。然而,关键字(最初在Windows(资源管理器)上编辑)似乎是用UTF16-LE编码的(即ASCII代码后面跟着0x00)。因此,它似乎是字符编码的混合体。我试图强制字符编码达到一定的标准(例如ini_set('exif.encode_unicode', 'byte2le')),但大多数时候我在关键词中都会打问号,或者什么都没有。

有人知道哪里出了问题,如何修复它,为什么它在Windows XAMMP而不是Mac XAMPP上运行良好吗?

感谢

我找到了答案:

exif.decode_unicode_motorola强制设置为UCS-2LE,而不是默认值UCS-2BE

ini_set('exif.decode_unicode_motorola', 'UCS-2LE');

仍然不明白为什么它在没有这个的Windows机器上工作。