使用ThinkPHP自带的Http类下载远程图片到本地的实现代码


Posted in PHP onAugust 02, 2011

Http类在目录ThinkPHP/Lib/ORG/Net下面。接下来看看是如何调用的。

<?php 
import("Com.Buyback.QueryAmazon"); 
import("ORG.Net.Http"); 
class Image { 
public static function getImage($isbn) { 
$bookInformModel = D("bookinform"); 
$result = $bookInformModel->where("isbn='$isbn'")->select(); 
if($result[0]['image'] == ""){ 
$data['inform_id'] = $result[0]['inform_id']; 
$remoteUrl = QueryAmazon::getImage($isbn); 
if(!empty($remoteUrl['ImageURL'])){ 
$localUrl = "Public/bookcover/".$isbn.".jpg"; 
Http::curl_download($remoteUrl['ImageURL'], "./".$localUrl); 
}else{ 
$localUrl = "Public/bookcover/unknownbook.png"; 
} 
$data['image'] = $localUrl; 
$bookInformModel->save($data); 
return $localUrl; 
} 
return $result[0]['image']; 
} 
} 
?>

这里我先判断数据库中有无该图片信息,没有就调用amazon的webservice从远程获取到图片地址,再使用
Http::curl_download($remoteUrl['ImageURL'], "./".$localUrl);

其中curl_download方法第一个参数是远程图片地址,第二个参数是保存到本地的地址。
OK,就这么简单~~
PHP 相关文章推荐
php中计算时间差的几种方法
Dec 31 PHP
《PHP编程最快明白》第五讲:php目录、文件操作
Nov 01 PHP
php设置编码格式的方法
Mar 05 PHP
解析php 版获取重定向后的地址(代码)
Jun 26 PHP
php时区转换转换函数
Jan 07 PHP
php列出mysql表所有行和列的方法
Mar 13 PHP
php递归遍历多维数组的方法
Apr 18 PHP
详解PHP的Laravel框架中Eloquent对象关系映射使用
Feb 26 PHP
Yii2中YiiBase自动加载类、引用文件方法分析(autoload)
Jul 25 PHP
PHP判断用户是否已经登录(跳转到不同页面或者执行不同动作)
Sep 22 PHP
Yii框架连表查询操作示例
Sep 06 PHP
Yii框架安装简明教程
May 15 PHP
linux下使用ThinkPHP需要注意大小写导致的问题
Aug 02 #PHP
理解和运用PHP中的多态性[译]
Aug 02 #PHP
应用开发中涉及到的css和php笔记分享
Aug 02 #PHP
PHP源代码数组统计count分析
Aug 02 #PHP
linux下为php添加curl扩展的方法
Jul 29 #PHP
php中修改浏览器的User-Agent来伪装你的浏览器和操作系统
Jul 29 #PHP
php 判断访客是否为搜索引擎蜘蛛的函数代码
Jul 29 #PHP
You might like
神盾加密解密教程(三)PHP 神盾解密工具
2014/06/08 PHP
php文件读取方法实例分析
2015/06/20 PHP
php防止网站被攻击的应急代码
2015/10/21 PHP
smarty中改进truncate使其支持中文的方法
2016/05/30 PHP
PHP判断表达式中括号是否匹配的简单实例
2016/10/22 PHP
PHP抽象类与接口的区别实例详解
2019/05/09 PHP
prototype 1.5相关知识及他人笔记
2006/12/16 Javascript
jQuery实现id模糊查询的小例子
2013/03/19 Javascript
浅析LigerUi开发中谨慎载入common.css文件
2013/07/09 Javascript
javascript中数组的多种定义方法和常用函数简介
2014/05/09 Javascript
jQuery.parseJSON(json)将JSON字符串转换成js对象
2014/07/27 Javascript
JavaScript实现算术平方根算法-代码超简单
2015/09/11 Javascript
jQuery+css实现的切换图片功能代码
2016/01/27 Javascript
基于JS实现无缝滚动思路及代码分享
2016/06/07 Javascript
JS &amp; JQuery 动态添加 select option
2016/06/08 Javascript
js实现自动轮换选项卡
2017/01/13 Javascript
angularJS的radio实现单项二选一的使用方法
2018/02/28 Javascript
详解mpvue scroll-view自动回弹bug解决方案
2018/10/01 Javascript
微信小程序用户授权,以及判断登录是否过期的方法
2019/05/10 Javascript
详解vue中v-model和v-bind绑定数据的异同
2020/08/10 Javascript
Python实现方便使用的级联进度信息实例
2015/05/05 Python
总结网络IO模型与select模型的Python实例讲解
2016/06/27 Python
Python 利用内置set函数对字符串和列表进行去重的方法
2018/06/29 Python
Sanic框架路由用法实例分析
2018/07/16 Python
对python cv2批量灰度图片并保存的实例讲解
2018/11/09 Python
python 通过类中一个方法获取另一个方法变量的实例
2019/01/22 Python
python3中的logging记录日志实现过程及封装成类的操作
2020/05/12 Python
俄罗斯旅游网站:Tripadvisor俄罗斯
2017/03/21 全球购物
印尼旅游网站:via
2017/11/12 全球购物
经理秘书找工作求职信
2013/12/19 职场文书
大学第二课堂活动总结
2014/07/08 职场文书
社会工作专业自荐信
2014/09/26 职场文书
公安局副政委班子个人对照检查材料
2014/10/04 职场文书
开业庆典嘉宾致辞
2015/08/01 职场文书
复制别人的成功真的会成功吗?
2019/10/17 职场文书
Python连接Postgres/Mysql/Mongo数据库基本操作大全
2021/06/29 Python