PHP下载远程图片的几种方法总结


Posted in PHP onApril 07, 2017

PHP下载远程图片的几种方法总结

本文演示3个从远程URL下载图片,并保存到本地文件中的方法,包括file_get_contents,curl和fopen。

1. 使用file_get_contents

function dlfile($file_url, $save_to)
{
 $content = file_get_contents($file_url);
 file_put_contents($save_to, $content);
}

2.使用CURL

function dlfile($file_url, $save_to)
{
 $ch = curl_init();
 curl_setopt($ch, CURLOPT_POST, 0); 
 curl_setopt($ch,CURLOPT_URL,$file_url); 
 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
 $file_content = curl_exec($ch);
 curl_close($ch);
 $downloaded_file = fopen($save_to, 'w');
 fwrite($downloaded_file, $file_content);
 fclose($downloaded_file);
}

3.使用fopen

function dlfile($file_url, $save_to)
{
 $in=  fopen($file_url, "rb");
 $out=  fopen($save_to, "wb");
 while ($chunk = fread($in,8192))
 {
 fwrite($out, $chunk, 8192);
 }
 fclose($in);
 fclose($out);
}

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

PHP 相关文章推荐
PHP开发的一些注意点总结
Oct 12 PHP
php模块memcache和memcached区别分析
Jun 14 PHP
php mysql 判断update之后是否更新了的方法
Jan 10 PHP
jQuery+php实现ajax文件即时上传的详解
Jun 17 PHP
typecho插件编写教程(六):调用接口
May 28 PHP
是 WordPress 让 PHP 更流行了 而不是框架
Feb 03 PHP
提交表单后 PHP获取提交内容的实现方法
May 25 PHP
Yii2中使用join、joinwith多表关联查询
Jun 30 PHP
php+MySql实现登录系统与输出浏览者信息功能
Jul 01 PHP
微信公众号开发之通过接口删除菜单
Feb 20 PHP
PHP迭代器和生成器用法实例分析
Sep 28 PHP
浅谈laravel-admin的sortable和orderby使用问题
Oct 03 PHP
POST一个JSON格式的数据给Restful服务实例详解
Apr 07 #PHP
详谈配置phpstorm完美支持Codeigniter(CI)代码自动完成(代码提示)
Apr 07 #PHP
php 根据自增id创建唯一编号类
Apr 06 #PHP
php及codeigniter使用session-cookie的方法(详解)
Apr 06 #PHP
浅谈php(codeigniter)安全性注意事项
Apr 06 #PHP
详谈php ip2long 出现负数的原因及解决方法
Apr 05 #PHP
php生成0~1随机小数的方法(必看)
Apr 05 #PHP
You might like
用PHP函数解决SQL injection
2006/10/09 PHP
PHP中动态HTML的输出技术
2006/10/09 PHP
浅析php中常量,变量的作用域和生存周期
2013/08/10 PHP
使用ThinkPHP+Uploadify实现图片上传功能
2014/06/26 PHP
Laravel 5框架学习之数据库迁移(Migrations)
2015/04/08 PHP
php将日期格式转换成xx天前的格式
2015/04/16 PHP
PHP实现的简单AES加密解密算法实例
2017/05/29 PHP
THINKPHP5.1 Config的配置与获取详解
2020/06/08 PHP
phpcmsv9.0任意文件上传漏洞解析
2020/10/20 PHP
javascript中的几个运算符
2007/06/29 Javascript
超级24小时弹窗代码 24小时退出弹窗代码 100%弹窗代码(IE only)
2010/06/11 Javascript
javascript中自定义对象的属性方法分享
2013/07/12 Javascript
JS+DIV+CSS排版布局实现美观的选项卡效果
2015/10/10 Javascript
JS组件Bootstrap ContextMenu右键菜单使用方法
2016/04/17 Javascript
浅谈js中的in-for循环
2016/06/28 Javascript
详解nodejs的express如何自动生成项目框架
2017/07/12 NodeJs
vue将时间戳转换成自定义时间格式的方法
2018/03/02 Javascript
[01:30]2016国际邀请赛中国区预选赛神秘商店火爆开启
2016/06/26 DOTA
[00:32]2018DOTA2亚洲邀请赛出场——LGD
2018/04/04 DOTA
[02:37]TI8勇士令状不朽珍藏II视频展示
2018/06/23 DOTA
Python使用re模块正则提取字符串中括号内的内容示例
2018/06/01 Python
python中比较两个列表的实例方法
2019/07/04 Python
Python对Excel按列值筛选并拆分表格到多个文件的代码
2019/11/05 Python
python中的split()函数和os.path.split()函数使用详解
2019/12/21 Python
Python调用jar包方法实现过程解析
2020/08/11 Python
英国知名化妆品网站:Revolution Beauty(原TAM Beauty)
2018/02/28 全球购物
创先争优活动方案
2014/02/12 职场文书
班级年度安全计划书
2014/05/01 职场文书
小学生迎国庆演讲稿
2014/09/05 职场文书
大学生学年个人总结
2015/02/15 职场文书
酒店前台辞职书
2015/02/26 职场文书
党员自我评价2015
2015/03/03 职场文书
技术员个人工作总结
2015/03/03 职场文书
幼儿园圣诞节活动总结
2015/05/06 职场文书
自书遗嘱范文
2015/08/07 职场文书
Spring Security使用单点登录的权限功能
2022/04/03 Java/Android