Home  >  Article  >  Backend Development  >  How to download remote files to a specified directory in PHP

How to download remote files to a specified directory in PHP

藏色散人
藏色散人forward
2020-01-04 17:51:424658browse

PHP下载远程文件到指定目录

PHP用curl可以轻松实现下载远程文件到指定目录:

<?php
class Download
{
   public static function get($url, $file)
   {
      return file_put_contents($file, file_get_contents($url));
   }
   
   public static function curlGet($url, $file)
   {
      $ch = curl_init();
      curl_setopt($ch, CURLOPT_POST, 0); 
      curl_setopt($ch,CURLOPT_URL,$url); 
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
      $file_content = curl_exec($ch);
      curl_close($ch);
      $downloaded_file = fopen($file, &#39;w&#39;);
      fwrite($downloaded_file, $file_content);
      fclose($downloaded_file);
   }
   
   public static function openGet($url, $file)
   {
      $in = fopen($url, "rb");
      $out = fopen($file, "wb");
      while ($chunk = fread($in,8192))
      {
         fwrite($out, $chunk, 8192);
      }
      fclose($in);
      fclose($out);
   }
   
   /**
   *
   * 创建目录,支持递归创建目录
   * @param String $dirName 要创建的目录
   * @param int $mode 目录权限
   */
   public static function smkdir($dirName , $mode = 0777) {
     $dirs = explode(&#39;/&#39; , str_replace(&#39;\\&#39; , &#39;/&#39; , $dirName));
     $dir = &#39;&#39;;
     foreach ($dirs as $part) {
        $dir.=$part . &#39;/&#39;;
        if ( ! is_dir($dir) && strlen($dir) > 0) {
           if ( ! mkdir($dir , $mode)) {
              return false;
           }
           if ( ! chmod($dir , $mode)) {
              return false;
           }
        }
     }
     return true;
   }
}

更多PHP相关知识,请访问PHP教程

The above is the detailed content of How to download remote files to a specified directory in PHP. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:awaimai.com. If there is any infringement, please contact admin@php.cn delete