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 n个不重复的随机数生成代码
Jun 23 PHP
php随机输出名人名言的代码
Oct 07 PHP
PHP数组排序函数合集 以及它们之间的联系分析
Jun 27 PHP
解析web文件操作常见安全漏洞(目录、文件名检测漏洞)
Jun 29 PHP
php操作mongoDB实例分析
Dec 29 PHP
yii添删改查实例
Nov 16 PHP
PHP匿名函数和use子句用法实例
Mar 16 PHP
php入门教程之Zend Studio设置与开发实例
Sep 09 PHP
php preg_match的匹配不同国家语言实例
Dec 29 PHP
PHP多进程编程之僵尸进程问题的理解
Oct 15 PHP
PHP中PCRE正则解析代码详解
Apr 26 PHP
PHP 面向对象程序设计之类属性与类常量实现方法分析
Apr 13 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
实现“上一页”和“下一页按钮
2006/10/09 PHP
PHP调用三种数据库的方法(1)
2006/10/09 PHP
基于PHP的简单采集数据入库程序
2014/07/30 PHP
PHP连接SQLServer2005的方法
2015/01/27 PHP
PHP 中 var_export、print_r、var_dump 调试中的区别
2018/06/19 PHP
Laravel框架表单验证操作实例分析
2019/09/30 PHP
Laravel6.18.19如何优雅的切换发件账户
2020/06/14 PHP
JQuery选择器特辑 详细小结
2012/05/14 Javascript
分享一个我自己写的ToolTip提示插件(附源码)
2013/01/20 Javascript
Js+Jq获取URL参数的集中方法示例代码
2014/05/20 Javascript
IE6中链接A的href为javascript协议时不在当前页面跳转
2014/06/05 Javascript
javascript中为某个元素指定事件的三种方式
2014/08/07 Javascript
JavaScript中document对象使用详解
2015/01/06 Javascript
JS基于clipBoard.js插件实现剪切、复制、粘贴
2016/05/03 Javascript
设计模式中的组合模式在JavaScript程序构建中的使用
2016/05/18 Javascript
同步异步动态引入js文件的几种方法总结
2016/09/23 Javascript
Json对象和字符串互相转换json数据拼接和JSON使用方式详细介绍(小结)
2016/10/25 Javascript
vue实现留言板todolist功能
2017/08/16 Javascript
详解HTML5 使用video标签实现选择摄像头功能
2017/10/25 Javascript
基于React Native 0.52实现轮播图效果
2020/08/25 Javascript
NestJs 静态目录配置详解
2019/03/12 Javascript
关于layui的下拉搜索框异步加载数据的解决方法
2019/09/28 Javascript
[01:50]WODOTA制作 DOTA2中文宣传片《HERO》
2013/04/28 DOTA
Python Tkinter简单布局实例教程
2014/09/03 Python
Flask之请求钩子的实现
2018/12/23 Python
Python 微信之获取好友昵称并制作wordcloud的实例
2019/02/21 Python
python利用opencv保存、播放视频
2020/11/02 Python
Python 利用Entrez库筛选下载PubMed文献摘要的示例
2020/11/24 Python
亚马逊西班牙购物网站:amazon西班牙
2017/03/06 全球购物
宠物店的创业计划书范文
2014/01/11 职场文书
初中校园之声广播稿
2014/01/15 职场文书
3分钟演讲稿
2014/04/30 职场文书
辣妈辣妹观后感
2015/06/10 职场文书
MySQL中distinct与group by之间的性能进行比较
2021/05/26 MySQL
Python 数据可视化之Matplotlib详解
2021/11/02 Python
一行Python命令实现批量加水印
2022/04/07 Python