平时,我们经常引用一些外链图片作为我们网站的内容。但是很不巧的是,提供图片的网站又偏偏启动了防盗链功能。所以呢,到最后,我们引用的图片将极有可能会变成宣传他人网站的道具。当然了,也有人利用伪造来路或者是其他方式解除了壁垒,但是这样做就会让
平时,我们经常引用一些外链图片作为我们网站的内容。但是很不巧的是,提供图片的网站又偏偏启动了防盗链功能。所以呢,到最后,我们引用的图片将极有可能会变成宣传他人网站的道具。当然了,也有人利用伪造来路或者是其他方式解除了壁垒,但是这样做就会让图片加载的时间变长,让网站整体的加载速度大打折扣。所以呢,最好的办法还是引用我们自己本地的图片。但是如果以前引用了别人的图片,现在总不能一篇一篇文章地区查出来,然后替换吧。无疑地,如果手动起来,这将是一个巨大的工作量。所以,我们需要来个保存远程图片的功能。下面,我们就来看看,通过PHP实现远程下载图片到本地的方法。
function?save_image($inPath,$outPath){ ?? $in=fopen($inPath,?"rb"); ?? $out=fopen($outPath,?"wb"); ?? while($chunk=fread($in,8192)){ ?? fwrite($out,?$chunk,?8192); ?? } ?? fclose($in); ?? fclose($out); ?? }??
在上面的函数中,主要是利用fopen打开文件,以及打开相关的目标目录,然后通过fread函数读取文件的数据流,下来通过fwrite把获得的数据流写到本地,最后通过fclose函数关闭连接!!
声明: 本文采用 BY-NC-SA 协议进行授权 | IT路人
转载请注明转自《PHP教程:远程下载图片》