zoukankan      html  css  js  c++  java
  • php通过 curl方法请求下载 http链接文件

    php通过 curl方法请求下载 http链接文件

    <?php
    $url = 'https://example.com/1.webp?test=1';
    
    //去除?后面的参数
    $url=strtok($url,'?'); 
    // 初始化文件存放的路径 
    $dir = dirname(__FILE__).DIRECTORY_SEPARATOR;
    if(!is_dir($dir)){
    	mkdir($dir);
    }
      
    // 初始化 cURL 会话
    $ch = curl_init($url); 
      
    
    
    // 使用 basename() 方法返回值来获取文件的文件名称
    $file_name = basename($url); 
      
    // 存放文件到本地的完整路径
    $save_file_loc = $dir . $file_name; 
    echo $save_file_loc;
    // 打开文件  
    $fp = fopen($save_file_loc, 'wb'); 
    curl_setopt($ch, CURLOPT_HEADER, 0);
    
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
      
    // 处理一个 cURL 会话
    $result = curl_exec($ch); 
    
    // 关闭一个 cURL会话并释放所有资源
    curl_close($ch); 
    
    //将curl请求返回结果写入到 fp 打开的文件句柄中
    fwrite($fp, $result);
    
    // 关闭 fp 句柄并释放所有资源
    fclose($fp);
    

    References

    1. How to remove the querystring and get only the url?
    2. Download file from URL using PHP
  • 相关阅读:
    Eclipse 的SVN 插件
    linux克隆后修配置
    SVN服务器端环境搭建步骤
    Linux安装 jdk、tomcat、eclipse、mysql
    Linux RPM和YUM
    linux进程管理
    day21
    day20
    day18 作业
    day 19
  • 原文地址:https://www.cnblogs.com/fsong/p/12297033.html
Copyright © 2011-2022 走看看