PHP下载远程图片并保存到本地方法

1 /* 2 * 上传网络图片 3 */ 4 function GrabImage($url,$filename="") { 5 if($url=="") return false; 6 7 if($filename=="") { 8 $ext=strrchr($url,"."); 9 if($ext!=".jpeg" && $ext!=".jpg" && $ext!=".png") return false; 10 preg_match('/\/([^\/]+\.[a-z]{3,4})$/i',$url,$matches); 11 $image_name = strToLower($matches[1]); 12 $filename='data/runtime/images/'.$image_name; 13 }else{ 14 $image_name = $filename; 15 $filename='data/runtime/images/'.$filename; 16 } 17//方法一 18 $ch = curl_init(); 19 curl_setopt($ch, CURLOPT_POST, 0); 20 curl_setopt($ch,CURLOPT_URL,$url); 21 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 22 $file_content = curl_exec($ch); 23 curl_close($ch); 24 $downloaded_file = fopen($filename, 'w'); 25 fwrite($downloaded_file, $file_content); 26 fclose($downloaded_file); 27 return $image_name; 28 29//方法二 30// $src_im = imagecreatefromjpeg($url); 31// $srcW = ImageSX($src_im); //获得图像的宽 32// $srcH = ImageSY($src_im); //获得图像的高 33// $dst_im = ImageCreateTrueColor($srcW,$srcH); //创建新的图像对象 34// imagecopy($dst_im, $src_im, 0, 0, 0, 0, $srcW, $srcH); 35// imagejpeg($dst_im, $filename); //创建缩略图文件 36 // return $image_name; 37 38//方法三 39// ob_start(); 40// readfile($url); 41// $img = ob_get_contents(); 42// ob_end_clean(); 43// $size = strlen($img); 44// $fp2=@fopen($filename, "a"); 45// fwrite($fp2,$img); 46// fclose($fp2); 47// return $image_name; 48 }

ps: http://www.jb51.net/article/78455.htm http://www.cnblogs.com/mengxiaotian/p/5051579.html http://blog.csdn.net/iefreer/article/details/46930239

点赞
收藏

评论区

加载中...

相关推荐

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

uni-app入门教程(5)接口的基本使用

前言本文主要介绍uniapp提供的一些基础接口,包括:网络请求接口,用于通过指定的请求方法,携带特定的数据,向特定的地址请求并返回请求结果;图片处理接口,包括选择、预览、获取信息、保存到本地等接口;文件处理接口,包括文件上传和下载接口;数据缓存接口,包括以同步或异步的方式保存、获取或删除数据的接口。一、网络请求小程序要想正常运转,都需要与服务器端进

PHP远程下载图片,微信头像存到本地,本地图片转base64

方法一(推荐):functiondownload_remote_pic($url){$header'UserAgent:Mozilla/5.0(WindowsNT6.1;Win64;x64;rv:45.0)Gecko/20100101Firefox/45.0',

Android 网络url设置View背景图

imgstr为url网络图片地址,topllay是要设置背景的控件;方法1.AndroidGlide设置View背景图Glide.with(this).load(imgStr).asBitmap()//签到整体背景.into(newSimpleTarget<Bitmap(){

PHP创建多级树型结构

<!lang:php<?php$areaarray(array('id'1,'pid'0,'name''中国'),array('id'5,'pid'0,'name''美国'),array('id'2,'pid'1,'name''吉林'),array('id'4,'pid'2,'n

URL相关函数

http://127.0.0.1/php/example/URL/pg2.php?user\_nameSERENE问号之前的部分是页面正常的URL,问号之后是附加URL上的部分相关函数:arrayparse\_url(stringurl)该函数对URL字符进行解析该数组中包含了解析的结果。stringurlencode(string

PHP下载远程图片并保存到本地方法 - HelloWorld