PHP获取远程图片并保存到本地的方法


Posted in PHP onMay 12, 2015

本文实例讲述了PHP获取远程图片并保存到本地的方法。分享给大家供大家参考。具体实现方法如下:

<?php
function GrabImage($url, $filename = "") {
 if ($url == ""):return false;
 endif;
 //如果$url地址为空,直接退出
 if ($filename == "") {
 //如果没有指定新的文件名
 $ext = strrchr($url, ".");
 //得到$url的图片格式
 if ($ext != ".gif" && $ext != ".jpg"):return false;
 endif;
 //如果图片格式不为.gif或者.jpg,直接退出
 $filename = date("dMYHis") . $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://imgsrc.baidu.com/baike/abpic/item/6648d73db0edd1e89f3d62f7.jpg", "");
if ($img):echo '<pre><img src="' . $img . '"></pre>';
//如果返回值为真,这显示已经采集到服务器上的图片
else:echo "false";
endif;
//否则,输出采集失败
?>

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
php读取二进制流(C语言结构体struct数据文件)的深入解析
Jun 13 PHP
php不用正则验证真假身份证
Nov 06 PHP
用PHP和Shell写Hadoop的MapReduce程序
Apr 15 PHP
php通过session防url攻击方法
Dec 10 PHP
php中explode的负数limit用法分析
Feb 27 PHP
PHP 实现类似js中alert() 提示框
Mar 18 PHP
php实现通用的从数据库表读取数据到数组的函数实例
Mar 21 PHP
php找出指定范围内回文数且平方根也是回文数的方法
Mar 23 PHP
php+ajax登录跳转登录实现思路
Jul 31 PHP
php插入含有特殊符号数据的处理方法
Nov 24 PHP
PHP聚合式迭代器接口IteratorAggregate用法分析
Dec 28 PHP
PHP通过调用新浪API生成t.cn格式短网址链接的方法详解
Feb 20 PHP
PHP IDE PHPStorm配置支持友好Laravel代码提示方法
May 12 #PHP
php解析xml方法实例详解
May 12 #PHP
php实现统计网站在线人数的方法
May 12 #PHP
PHP输出一个等腰三角形的方法
May 12 #PHP
PHP session文件独占锁引起阻塞问题解决方法
May 12 #PHP
PHP获取数组最大值下标的方法
May 12 #PHP
PHP Streams(流)详细介绍及使用
May 12 #PHP
You might like
《PHP边学边教》(04.编写简易的通讯录――视频教程1)
2006/12/13 PHP
php自定义apk安装包实例
2014/10/20 PHP
PHP5多态性与动态绑定介绍
2015/04/03 PHP
PHP开发中解决并发问题的几种实现方法分析
2017/11/13 PHP
javascript学习(二)javascript常见问题总结
2013/01/02 Javascript
jquery实现很酷的网页顶部图标下拉菜单效果
2015/08/22 Javascript
简单理解vue中track-by属性
2016/10/26 Javascript
NodeJs下的测试框架Mocha的简单介绍
2017/02/22 NodeJs
js用类封装pop弹窗组件
2017/10/08 Javascript
JavaScript实现快速排序的方法分析
2018/01/10 Javascript
教你如何编写Vue.js的单元测试的方法
2018/10/17 Javascript
微信小程序自定义toast弹窗效果的实现代码
2018/11/15 Javascript
详解JavaScript修改注册表的方法
2020/01/05 Javascript
JavaScript 函数用法详解【函数定义、参数、绑定、作用域、闭包等】
2020/05/12 Javascript
ES2020 已定稿,真实场景案例分析
2020/05/25 Javascript
vue点击按钮实现简单页面的切换
2020/09/08 Javascript
Vue 实现拨打电话操作
2020/11/16 Javascript
详解Python3.6安装psutil模块和功能简介
2018/05/30 Python
PyTorch基本数据类型(一)
2019/05/22 Python
python opencv 读取图片 返回图片某像素点的b,g,r值的实现方法
2019/07/03 Python
Python异常模块traceback用法实例分析
2019/10/22 Python
python将下载到本地m3u8视频合成MP4的代码详解
2020/11/24 Python
PyTorch中clone()、detach()及相关扩展详解
2020/12/09 Python
宝拉珍选美国官网:Paula’s Choice美国
2018/01/07 全球购物
牵手50新加坡:专为黄金岁月的单身人士而设的交友网站
2020/08/16 全球购物
iHerb俄罗斯:维生素、补品和天然产品
2020/07/09 全球购物
static全局变量与普通的全局变量有什么区别?static局部变量和普通局部变量有什么区别?static函数与普通函数有什么区别?
2015/02/22 面试题
2013年保送生自荐信格式
2013/11/20 职场文书
物理专业本科生自荐信
2014/01/30 职场文书
自动化毕业生专业自荐书范文
2014/02/04 职场文书
个人授权委托书范本
2014/04/03 职场文书
班主任评语大全
2014/04/26 职场文书
国际贸易专业自荐信
2014/06/10 职场文书
尊老爱亲美德少年事迹材料
2014/08/14 职场文书
2014年计划生育工作总结
2014/11/14 职场文书
世界上超棒的8种逻辑思维
2019/08/06 职场文书