PHP抓取远程图片,php下载远程图片
PHP抓取远程图片,php下载远程图片,php保存远程图片到本地
函数
/**
* [getImg 抓取远程图片]
* @param string $url [图片URL地址]
* @param string $filename [保存图片的路径]
* @return [boolean] [TRUE成功抓取]
* @author [建百站www.jianbaizhan.com]
*/
function getImg($url = "", $filename = "") {
if(file_exists($filename)) {//图片已存在
return false;
}
//去除URL连接上面可能的引号
$url = preg_replace( '/(?:^[\'"]+|[\'"\/]+$)/', '', $url );
$hander = curl_init();
$fp = fopen($filename,'wb');
curl_setopt($hander,CURLOPT_URL,$url);
curl_setopt($hander,CURLOPT_FILE,$fp);
curl_setopt($hander,CURLOPT_HEADER,0);
curl_setopt($hander,CURLOPT_FOLLOWLOCATION,1);
curl_setopt($hander,CURLOPT_TIMEOUT,60);
curl_exec($hander);
curl_close($hander);
fclose($fp);
return true;
}使用方法
打印出来,是为了判断抓取图片是否成功,对于图片的后缀名,可以使用函数获取相对于的后缀名。
获取后缀名方法:http://www.jianbaizhan.com/article/detail/id/237.html
$url = 'http://www.baidu.com/img/bdlogo.png'; $re = getImg($url,md5($url).'.png'); var_dump($re);
可能会有一部分图片无法抓取成功,有可能是因为有些图片,远程服务器防止抓取的原因。
本文作者: Liaodeity
本文链接: https://www.jianbaizhan.com/article/241
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 许可协议。转载请注明出处!
支持一下!