PHP技术分享-久趣源码交流论坛

PHP技术分享

久趣社区【PHP学院】--一个专注用于游戏或者源码里的PHP实用性社区!
帖子
56
互动
6
阅读
833

[PHP编程] PHP实现远程下载文件到本地的办法

单个文件举个例子,多文件的话可以放在一个文件夹下遍历后提供下载:

public function aaa(){
        $ddd = "http://47.105.151.181:8012/5fce06e407657/3.jpg";
        $ccc = "http://www.baidu.com/img/baidu_sylogo1.gif";
        $this->httpcopy($ddd);
    }
    public function httpcopy($url, $file="", $timeout=60) {
        $file = empty($file) ? pathinfo($url,PATHINFO_BASENAME) : $file;
        $dir = "Upload/docConversionImage/5fce06e407657/";
        if (!file_exists($dir)){
            mkdir ($dir,0777,true);
        }
        $url = str_replace(" ","%20",$url);
        if(function_exists('curl_init')) {
            $ch = curl_init();
            curl_setopt($ch, CURLOPT_URL, $url);
            curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
            $temp = curl_exec($ch);
            if(@file_put_contents($dir.$file, $temp) && !curl_error($ch)) {
                return $file;
            }else{
                return false;
            }
            
        }else{
            $opts = array(
                "http"=>array(
                    "method"=>"GET",
                    "header"=>"",
                    "timeout"=>$timeout
                )
            );
            $context = stream_context_create($opts);
            if(@copy($url, $file, $context)) {
                return $file;
            }else{
                return false;
            }
        }
    }

 

请登录后发表评论

    没有回复内容