源码论坛,商业源码下载,尽在锦尚中国商业源码论坛

标题: PHP实现远程下载文件到本地的办法 [打印本页]

作者: 洪七公    时间: 2023-1-10 15:45
标题: PHP实现远程下载文件到本地的办法

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

  1. public function aaa(){
  2.         $ddd = "http://47.105.151.181:8012/5fce06e407657/3.jpg";
  3.         $ccc = "http://www.baidu.com/img/baidu_sylogo1.gif";
  4.         $this->httpcopy($ddd);
  5.     }
  6.     public function httpcopy($url, $file="", $timeout=60) {
  7.         $file = empty($file) ? pathinfo($url,PATHINFO_BASENAME) : $file;
  8.         $dir = "Upload/docConversionImage/5fce06e407657/";
  9.         if (!file_exists($dir)){
  10.             mkdir ($dir,0777,true);
  11.         }
  12.         $url = str_replace(" ","%20",$url);
  13.         if(function_exists('curl_init')) {
  14.             $ch = curl_init();
  15.             curl_setopt($ch, CURLOPT_URL, $url);
  16.             curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);
  17.             curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
  18.             $temp = curl_exec($ch);
  19.             if(@file_put_contents($dir.$file, $temp) && !curl_error($ch)) {
  20.                 return $file;
  21.             }else{
  22.                 return false;
  23.             }
  24.             
  25.         }else{
  26.             $opts = array(
  27.                 "http"=>array(
  28.                     "method"=>"GET",
  29.                     "header"=>"",
  30.                     "timeout"=>$timeout
  31.                 )
  32.             );
  33.             $context = stream_context_create($opts);
  34.             if(@copy($url, $file, $context)) {
  35.                 return $file;
  36.             }else{
  37.                 return false;
  38.             }
  39.         }
  40.     }
复制代码







欢迎光临 源码论坛,商业源码下载,尽在锦尚中国商业源码论坛 (https://bbs.52jscn.com/) Powered by Discuz! X3.3