将二进制 JPEG 图像数据加载到 PHP 变量中以进行 MD5 散列
Posted
技术标签:
【中文标题】将二进制 JPEG 图像数据加载到 PHP 变量中以进行 MD5 散列【英文标题】:Load binary JPEG image data into PHP variable for MD5 hashing 【发布时间】:2017-08-28 14:53:21 【问题描述】:我正在编写一个 php 脚本来验证两个文件中的 JPEG 数据是否相同。 EXIF/IPTC(元数据)可能会在两个文件之间发生变化。
我的一般做法是使用 MD5 哈希来比较两个文件的二进制 JPEG 数据,以确认它没有改变。
但是,无论我使用 GD 做什么,我似乎都得到了元数据和 JPEG 数据的 MD5 哈希值。有谁知道使用 PHP 从 JPEG 文件中提取图像数据的最佳方法?
提前谢谢...
【问题讨论】:
这是 Python 中的解决方案,您可能能够适应 PHP,因为它归结为字节操作:***.com/questions/10075065/… 您也可以尝试在散列之前使用 mogrify -strip image.jpg 剥离元数据 【参考方案1】:@jarek.d 上面建议使用 mogrify(imagemagick 的一部分),所以我使用 exec 在比较两个文件之前剥离元数据。这很好用。
【讨论】:
以上是关于将二进制 JPEG 图像数据加载到 PHP 变量中以进行 MD5 散列的主要内容,如果未能解决你的问题,请参考以下文章
在 iOS 上从两个 jpeg 加载 RGBA 图像 - OpenGL ES 2.0
Javascript 画布 - 从加载的 4 波段 RGB 图像中删除 alpha 到 3 波段 JPEG 图像?