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

yipeiwu_com6年前PHP代码库
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多个图片压缩成ZIP的方法

 本文实例为大家分享了PHP多个图片压缩成ZIP的具体代码,供大家参考,具体内容如下 可将多个文件压缩成一个zip压缩包,文件名可自定义(兼容中文文件名) <?...

PHP 杂谈《重构-改善既有代码的设计》之五 简化函数调用

PHP 杂谈《重构-改善既有代码的设计》之五 简化函数调用

思维导图 介绍   前几篇系列文章,我比较关注的是<PHP 杂谈《重构-改善既有代码的设计》之一 重新组织你的函数>,但是我觉得我还是没有说清楚,我自己也有很多不理解的地方,...

解析PHP中的file_get_contents获取远程页面乱码的问题

PHP的file_get_contents获取远程页面内容,如果是gzip编码过的,返回的字符串就是编码后的乱码1、解决方法,找个ungzip的函数来转换下2、给你的url加个前缀,这样...

php中的观察者模式

观察者模式 复制代码 代码如下: interface Subject { public function Attach($Observer); //添加观察者 public functi...

PHP获取表单数据与HTML嵌入PHP脚本的实现

 php接受通过HTML表单提交的信息时,会将提交的数据保存在全局数组中,我们可以调用系统特定的自动全局变量数组来获取这些值。 常用的自动全局变量如下所示: 1、GET方式...