我试图使一个PHP脚本更新照片。我从源接收原始图像数据,我想将其与现有文件进行比较,看看是否应该下载它。我会把我想做的事情的想法贴出来。
$contents = file_get_contents($directory);
$new_photo = Photo["Data"];
echo strcmp($liph_id_contents,$photo['Data']==0);
这行不通,但我希望你能明白。我要比较的图片是。jpg
Photo["Data"]为原始图像数据
$directory是存储映像文件的位置
Update:我能够将两个图像转换为PHP图像资源。图片资源之间的比较也足够了。
Update:我找到了一个类来比较PHP中的两个图像资源。看一下http://compareimages.nikhazy-dizajn.hu/,我对类中的比较函数做了一点改动,让它使用PHP图像资源。
使用sha1_file()代替,就像您从互联网下载软件并希望确保它没有被更改一样。
if (sha1_file($directory) == sha1_file(Photo["Data"]))
echo "indentical";
else
echo "not identical";
如果两个文件相同,它们将返回相同的哈希值
我找到了一个类来比较PHP中的两个图像资源。看一下http://compareimages.nikhazy-dizajn.hu/,我对类中的比较函数做了一点改动,让它使用PHP图像资源。