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 相关文章推荐
如何做到多笔资料的同步
Oct 09 PHP
深入php 正则表达式的学习探讨
Jun 06 PHP
php与java通过socket通信的实现代码
Oct 21 PHP
JavaScript创建命名空间的5种写法
Jun 24 PHP
本地计算机无法启动Apache故障处理
Aug 08 PHP
跟我学Laravel之视图 & Response
Oct 15 PHP
PHP中round()函数对浮点数进行四舍五入的方法
Nov 19 PHP
php实现的简单检验登陆类
Jun 18 PHP
浅谈PHP中foreach/in_array的使用
Nov 02 PHP
thinkPHP实现递归循环栏目并按照树形结构无限极输出的方法
May 19 PHP
php观察者模式应用场景实例详解
Feb 03 PHP
PHP从零开始打造自己的MVC框架之类的自动加载实现方法详解
Jun 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中进行身份认证
2006/10/09 PHP
完美解决dedecms中的[html][/html]和[code][/code]问题
2007/03/20 PHP
FireFox浏览器使用Javascript上传大文件
2013/10/30 PHP
php中require和require_once的区别说明
2014/02/27 PHP
destoon整合ucenter后注册页面不跳转的解决方法
2014/06/21 PHP
php单元测试phpunit入门实例教程
2017/11/17 PHP
js图片延迟加载的实现方法及思路
2013/07/22 Javascript
Javascript 遮罩层和加载效果代码
2013/08/01 Javascript
Jquery Post处理后不进入回调的原因及解决方法
2014/07/15 Javascript
jQuery遍历对象、数组、集合实例
2014/11/08 Javascript
Javascript闭包用法实例分析
2015/01/23 Javascript
JavaScript表单验证开发
2016/11/23 Javascript
BootStrap 图标icon符号图标glyphicons不正常显示的快速解决办法
2016/12/08 Javascript
jQuery实现的仿百度,仿谷歌搜索下拉框效果示例
2016/12/30 Javascript
AngularJS 单选框及多选框的双向动态绑定
2017/04/20 Javascript
详谈AngularJs 控制器、数据绑定、作用域
2017/07/09 Javascript
信息滚动效果的实例讲解
2017/09/18 Javascript
Vue.JS项目中5个经典Vuex插件
2017/11/28 Javascript
网页爬虫之cookie自动获取及过期自动更新的实现方法
2018/03/06 Javascript
Vue项目配置跨域访问和代理proxy设置方式
2020/09/08 Javascript
关于vue 项目中浏览器跨域的配置问题
2020/11/10 Javascript
使用Python的Django框架结合jQuery实现AJAX购物车页面
2016/04/11 Python
浅谈flask截获所有访问及before/after_request修饰器
2018/01/18 Python
python库lxml在linux和WIN系统下的安装
2018/06/24 Python
python 自动重连wifi windows的方法
2018/12/18 Python
python面试题Python2.x和Python3.x的区别
2019/05/28 Python
Python进阶之使用selenium爬取淘宝商品信息功能示例
2019/09/16 Python
python中with语句结合上下文管理器操作详解
2019/12/19 Python
使用Django的JsonResponse返回数据的实现
2021/01/15 Python
伯利陶器:Burleigh Pottery
2018/01/03 全球购物
GoDaddy英国:全球排名第一的域名注册商
2018/06/08 全球购物
下列程序在32位linux或unix中的结果是什么
2015/01/26 面试题
国际金融专业大学生职业生涯规划书
2013/12/28 职场文书
党建示范点实施方案
2014/03/12 职场文书
模具设计与制造专业自荐书
2014/07/01 职场文书
关于PHP数组迭代器的使用方法实例
2021/11/17 PHP