zoukankan      html  css  js  c++  java
  • php curl上传文件

    如果PHP 5 >= 5.5.0, PHP 7,推荐使用CURLFile类设置文件信息

    $real_path=$_SERVER['DOCUMENT_ROOT'].'/Public/Public/Images/1.jpg';//文件绝对路径
    $data= array(
            "media"=>new CURLFile($real_path) 
            );
            $timeout = 5;
            $ch = curl_init ();
            curl_setopt ( $ch, CURLOPT_URL, $api );
            curl_setopt ( $ch, CURLOPT_POST, 1 );
            curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
            curl_setopt ( $ch, CURLOPT_CONNECTTIMEOUT, $timeout );
            curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, FALSE );
            curl_setopt ( $ch, CURLOPT_SSL_VERIFYHOST, false );
            curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data);
            $result = curl_exec ( $ch );

    根据php手册也可以这样设置,

    $real_path=$_SERVER['DOCUMENT_ROOT'].'/Public/Public/Images/1.jpg';//文件绝对路径
            $data= array(
            "media"=>@$real_path /*注意@*/
            );
            $timeout = 5;
            $ch = curl_init ();
                    curl_setopt ( $ch, CURLOPT_SAFE_UPLOAD,false );/*设置为false*/
            curl_setopt ( $ch, CURLOPT_URL, $api );
            curl_setopt ( $ch, CURLOPT_POST, 1 );
            curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
            curl_setopt ( $ch, CURLOPT_CONNECTTIMEOUT, $timeout );
            curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, FALSE );
            curl_setopt ( $ch, CURLOPT_SSL_VERIFYHOST, false );
            curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data);
            $result = curl_exec ( $ch );

     然而我在本地测试成功.使用微信公众平台上传图片接口却失败,说找不到文件,有时间时要好好研究一下.

  • 相关阅读:
    springCloud中的服务调用feign
    模块化理解
    springCloud中的注册中心Nacos
    vue路由理解
    vue生命周期理解
    webpack理解
    连接查询理解
    [HDU]5691Sitting in Line (状压DP)
    [Kattis]redblacktree(树形依赖背包,DP优化)
    Codeforces Round #699 (Div. 2)
  • 原文地址:https://www.cnblogs.com/ch459742906/p/6951755.html
Copyright © 2011-2022 走看看