用thinkphp将网络上的图片下载到本地服务器

我用的thinkphp版本是3.2.3,这个版本的跟更早些版本的调用方法不太一样,正确的调用方法是:

 

Demo3Controller.class

<?php
namespace Home\Controller;
use Think\Controller;

class Demo3Controller extends Controller {
    public function download(){
        $url = "http://n.sinaimg.cn/sports/20161023/MrD2-fxwztrt0212622.jpg";
        $localUrl = "Public/bookcover/MrD2-fxwztrt0212622.jpg";
        
        $http = new \Org\Net\Http();
        $http->curlDownload($url, $localUrl);
    
        echo "保存成功";
    }
    
}

$url是服务器的远程地址

$localUrl是本地服务器地址

这里要注意的是,Public/bookcover/目录不存在的话,要先手工创建一个,不然会报错,curlDownload方法不会自动创建本地文件夹。

保存到Public目录下的图片,可以通过http://localhost/thinkphp/Public/bookcover/MrD2-fxwztrt0212622.jpg访问到。

posted @ 2016-10-23 22:37  魔豆  阅读(510)  评论(0编辑  收藏  举报