使用PHP保存图片同时保持源来图片的md5值
使用php下载图片的时候遇到md5问题, 源图片通过http://su.bdimg.com/static/superplus/img/logo_white_ee663702.png
下载,
原图和curl获取到图片源时的md5一致,但使用php中的fwrite后就不行.
问sf的朋友们: 如何用PHP保存图片的时候使得md5值不变!
代码如:
/**
* 加载图片
*
*/
$save_dir = APP.'tmp'.DS;
$url = 'http://su.bdimg.com/static/superplus/img/logo_white_ee663702.png';
$img = http_client_request( $url );
echo 'Curl获取的二进制流文件MD5值:<br>'.md5($img); //图片md5
$fp2=@fopen($save_dir.'baidu-save.png','a');
fwrite($fp2,$img);
fclose($fp2);
unset($img,$url);
echo "\n";
$fmd5 = '通过fwrite保存图片MD5:<br>'.md5_file($save_dir.'baidu-save.png');
echo $fmd5;
echo '原图md5:<br>'.md5_file($save_dir.'baidu-org.png');
结果如:
Curl获取的二进制流文件MD5值:
329b15e8ba7234317dc663f8ee663702
通过fwrite保存图片MD5:
d477312948ef7bd72c4209b8db707f68
原图md5:
329b15e8ba7234317dc663f8ee663702
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
是不是因为已经存在
baidu-save.png
,然后fopen
用了参数'a'
,于是加到尾部了。改为
'w'
或者'wb'
试试。fwrite($fp2,md5($img));