/**

* php完美实现下载远程图片保存到本地

* @param: 文件url,保存文件目录,保存文件名称,使用的下载方式当保存文件名称为空时则使用远程文件原来的名称

* @date: 2017-05-13

*/

function getimage($url,$save_dir='',$filename='',$type=0){

if(trim($url)==''){

return array('file_name'=>'','save_path'=>'','error'=>1);

}

if(trim($save_dir)==''){

$save_dir='./';

}

if(trim($filename)==''){//保存文件名

$ext=strrchr($url,'.');

if($ext!='.gif'&&$ext!='.jpg'){

return array('file_name'=>'','save_path'=>'','error'=>3);

}

$filename=time().$ext;

}

if(0!==strrpos($save_dir,'/')){

$save_dir.='/';

}

//创建保存目录

if(!file_exists($save_dir)&&!mkdir($save_dir,0777,true)){

return array('file_name'=>'','save_path'=>'','error'=>5);

}

//获取远程文件所采用的方法

if($type){

$ch=curl_init();

$timeout=5;

curl_setopt($ch,CURLOPT_URL,$url);

curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);

curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);

$img=curl_exec($ch);

curl_close($ch);

}else{

ob_start();

readfile($url);

$img=ob_get_contents();

ob_end_clean();

}

//$size=strlen($img);

//文件大小

$fp2=@fopen($save_dir.$filename,'a');

fwrite($fp2,$img);

fclose($fp2);

unset($img,$url);

return array('file_name'=>$filename,'save_path'=>$save_dir.$filename,'error'=>0);

}

在调用上面方法时:(其中getimage方法已被存放在公共函数中,可直接调用。$headimgurl为微信头像地址)

$headimg = './Uploads/Picture/uid2/headimg/'.$openid.'.jpg';

$content = getimage($headimgurl,'./Uploads/Picture/uid2/headimg/',$openid.'.jpg',1);

php下载 微信头像图片_php完美实现下载远程图片保存到本地(保存微信头像)...相关推荐

  1. php下载随机api图片_php中直接输出随机图片的API

    最近应一个博友要求写了个随机图的api,可让php直接在浏览器中输出图片,支持本地文件也支持图片链接,主要功能就类似于那位博友说的网上的漫月api,下面言归正传直接贴上代码吧. index.php(主 ...

  2. IDM百度网盘不限速下载,油猴插件完美解决下载

    百度网盘相信大家都不陌生,可以说百度网盘是当今最流行的网盘之一!我们很多在网上找到的资料大部分都是利用百度网盘分享链接+提取码的方式进行分享的!然后根据我们当时的所需,进行资源的下载以完成信息传输的这 ...

  3. php 获取远程图片尺寸,PHP高效获取远程图片尺寸和大小的实现方法

    原标题:PHP高效获取远程图片尺寸和大小的实现方法 PHP高效获取远程图片尺寸和大小的实现方法 在这里分享一下自己的心得,希望和大家一起分享技术,如果有什么不足,还请大家指正.写出这篇目的,就是希望大 ...

  4. php如何接收ap端上传的图片_用php获取远程图片并把它保存到本地的代码

    用php获取远程图片并把它保存到本地的代码 更新时间:2008年04月07日 20:43:26   作者: Function: 获取远程图片并把它保存到本地 确定您有把文件写入本地服务器的权限变量说明 ...

  5. java ie下载文件名乱码问题_php中强制下载文件的代码(解决了IE下中文文件名乱码问题)...

    中间遇到一个问题是提交的中文文件名直接放到header里在IE下会变成乱码,解决方法是将文件名先urlencode一下再放入header,如下. $file_name = urlencode($_RE ...

  6. php 远程图片合拼,php获取远程图片的两种 CURL方式和sockets方式获取远程图片_php技巧...

    方式1:sockets $a = "http://jb51.net/content/uploadfile/201106/thum-f3ccdd27d2000e3f9255a7e3e2c488 ...

  7. php 远程图片合拼,php获取远程图片的三种方式

    来源:http://www.phstar.cn/article/258.html 下面介绍 3种php远程获取图片的方法,希望对大家有帮助. 1:file_get_contents,file_put_ ...

  8. 判断php图片是否存在,php判断远程图片是否存在

     代码如下 复制代码 function img_exits($url) { $ch = curl_init(); curl_setopt($ch, curlopt_url,$url); curl_se ...

  9. python调用打印机打印图片_pyqt5 调用打印机 打印远程图片

    求助.... pyqt5 实现 打印机 打印png图片 可以预览 def localPrinter(): printer = QPrinter(QPrinter.HighResolution) # / ...

最新文章

  1. 白春礼:探究物质世界奥秘的一把金钥匙——纪念元素周期表发表150周年
  2. java异步请求显示数据格式_JSON(四)——异步请求中前后端使用Json格式的数据进行交互...
  3. java Date工具类
  4. Tensorflow(一) 基础命令
  5. 51单片机的轮胎气压监测系统_汽车的胎压监测系统有哪些作用?
  6. asp.net 调用(引用 Native dll 的)C++/CLI dll 的问题及解决
  7. 数据分析前的准备工作
  8. TensorFlow 和keras有什么区别?
  9. LaTeX组件:texlive2019+texstudio+sumatraPDF 安装包及学习手册
  10. win11输入法繁体字切换简体字——记录
  11. 你需要一份更绝佳的文章排版与设计
  12. Cadence allegro小技巧总结
  13. remount of the / superblock failed: Permission denied remount failed
  14. vue生命周期(超详解!)
  15. [国家地理百年纪念典藏全100集][MKV][225M/1][国英双语中字]
  16. 关于解析XML文件时遇到的一些错误
  17. 单链表基本操作的完整程序
  18. 从tushare获取场内ETF基金数据
  19. [1196]Android逆向工具【反射大师】脱壳实战
  20. C语言中的break循环

热门文章

  1. 最新、最全和最广泛的人类心脏细胞图谱
  2. 计算机桌面有扫描图标如何开始扫,win7系统怎么添加扫描仪快捷方式-win7扫描仪快捷方式,win7扫描程序在哪...
  3. PCB设计FAQ集锦
  4. 在Unity使用PureMVC
  5. Linux系统内存占用过高排查方法
  6. 信安Note_day14
  7. opencv cpu指令集SSE/AVX
  8. 寻仙获取目录服务器信息失败,〖寻仙〗常见游戏问题解决办法!
  9. java合并word
  10. 敏感词过滤器 filter