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

前端之家收集整理的这篇文章主要介绍了使用ThinkPHP自带的Http类下载远程图片到本地的实现代码前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

Http类在目录ThinkPHP/Lib/ORG/Net下面。接下来看看是如何调用的。
<div class="codetitle"><a style="CURSOR: pointer" data="67280" class="copybut" id="copybut67280" onclick="doCopy('code67280')"> 代码如下:

<div class="codebody" id="code67280">
<?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从远程获取图片地址,再使用
<div class="codetitle"><a style="CURSOR: pointer" data="58994" class="copybut" id="copybut58994" onclick="doCopy('code58994')"> 代码如下:
<div class="codebody" id="code58994">
Http::curl_download($remoteUrl['ImageURL'],"./".$localUrl);

其中curl_download方法第一个参数是远程图片地址,第二个参数是保存到本地的地址。
OK,就这么简单~~

原文链接:https://www.f2er.com/thinkphp/27710.html

猜你在找的ThinkPHP相关文章