php下保存远程图片到本地的办法


Posted in PHP onAugust 08, 2010

今天在整理资料的时候发现以前找到的一个函数,通过这个函数我们就可以实现上面的功能。

主要函数:

function GrabImage($url,$filename="") { 
if($url=="") return false; if($filename=="") { 
$ext=strrchr($url,"."); 
if($ext!=".gif" && $ext!=".jpg" && $ext!=".png") return false; 
$filename=date("YmdHis").$ext; 
} 
ob_start(); 
readfile($url); 
$img = ob_get_contents(); 
ob_end_clean(); 
$size = strlen($img); 
$fp2=@fopen($filename, "a"); 
fwrite($fp2,$img); 
fclose($fp2); 
return $filename; 
}

获取一张图片的代码:
$img=GrabImage("http://www.baidu.com/img/baidu_logo.gif","logo.gif"); 
if($img){ 
echo '<img src="'.$img.'">'; 
}else{ 
echo "false"; 
}

这是保存google的logo的例子,获取到的图片保存在同级目录下面。

获取一系列的有规律的图片(例如:以数字1-100命名的100张图片):

for ($i=1;$i<=100;$i++){ 
$img=GrabImage("http://www.yourimagesite.com/images/$i.gif","images/$i.gif"); 
}

上面的www.yourimagesite.com是图片的网址,需要自己修改,程序执行完后,所有的图片将会保存到images目录下面。
PHP 相关文章推荐
php 文件状态缓存带来的问题
Dec 14 PHP
PHP 高级课程笔记 面向对象
Jun 21 PHP
php debug 安装技巧
Apr 30 PHP
php流量统计功能的实现代码
Sep 29 PHP
PHP取余函数介绍MOD(x,y)与x%y
May 15 PHP
浅谈php扩展imagick
Jun 02 PHP
php如何连接sql server
Oct 16 PHP
带你了解PHP7 性能翻倍的关键
Nov 19 PHP
php版银联支付接口开发简明教程
Oct 14 PHP
php获取指定数量随机字符串的方法
Feb 06 PHP
php生成图片缩略图功能示例
Feb 22 PHP
laravel框架使用极光推送消息操作示例
Feb 15 PHP
用PHP实现递归循环每一个目录
Aug 08 #PHP
为IP查询添加GOOGLE地图功能的代码
Aug 08 #PHP
PHP下对数组进行排序的函数
Aug 08 #PHP
PHP 冒泡排序算法的实现代码
Aug 08 #PHP
php下关于Cannot use a scalar value as an array的解决办法
Aug 08 #PHP
在PHP中实现Javascript的escape()函数代码
Aug 08 #PHP
PHP下escape解码函数的实现方法
Aug 08 #PHP
You might like
php中session_unset与session_destroy的区别分析
2011/06/16 PHP
PHP 获取文件路径(灵活应用__FILE__)
2013/02/15 PHP
使用jquery实现div的tab切换实例代码
2013/05/27 Javascript
深入理解JavaScript系列(28):设计模式之工厂模式详解
2015/03/03 Javascript
jquery中trigger()无法触发hover事件的解决方法
2015/05/07 Javascript
ECMA5数组的新增方法有哪些及forEach()模仿实现
2015/11/03 Javascript
javascript的列表切换【实现代码】
2016/05/03 Javascript
Vue.js实现一个自定义分页组件vue-paginaiton
2016/09/05 Javascript
浅析jsopn跨域请求原理及cors(跨域资源共享)的完美解决方法
2017/02/06 Javascript
js实现横向拖拽导航条功能
2017/02/17 Javascript
解决AngualrJS页面刷新导致异常显示问题
2017/04/20 Javascript
angularjs中回车键触发某一事件的方法
2017/04/24 Javascript
JavaScript限定范围拖拽及自定义滚动条应用(3)
2017/05/17 Javascript
JavaScript模拟文件拖选框样式v1.0的实例
2017/08/04 Javascript
Vue 事件处理操作实例详解
2019/03/05 Javascript
微信小程序 select 下拉框组件功能
2019/09/09 Javascript
VUE项目初建和常见问题总结
2019/09/12 Javascript
微信小程序实现拖拽功能
2019/09/26 Javascript
Vue.js标签页组件使用方法详解
2019/10/19 Javascript
VUE-ElementUI 自定义Loading图操作
2020/11/11 Javascript
[08:17]Ti9 现场cosplay
2019/09/10 DOTA
python实现根据ip地址反向查找主机名称的方法
2015/04/29 Python
对django xadmin自定义菜单的实例详解
2019/01/03 Python
python中struct模块之字节型数据的处理方法
2019/08/27 Python
基于matplotlib xticks用法详解
2020/04/16 Python
Python中对象的比较操作==和is区别详析
2021/02/12 Python
使用canvas压缩图片上传的方法示例
2020/02/07 HTML / CSS
马智宇结婚主持词
2014/04/01 职场文书
领导干部作风整顿剖析材料
2014/10/11 职场文书
中学教师个人总结
2015/02/10 职场文书
六一儿童节主持开场白
2015/05/28 职场文书
公司员工离职感言
2015/08/03 职场文书
关于拾金不昧的感谢信(五篇)
2019/10/18 职场文书
解决Maven项目中 Invalid bound statement 无效的绑定问题
2021/06/15 Java/Android
我收到了德劲DE1107
2022/04/05 无线电
为自由献出你的心脏!「进击的巨人展 FINAL」2022年6月在台开展
2022/04/13 日漫