PHP CURL 模擬form表單上傳遇到的小坑


1:引用的時候

$parans ['img']=new \CURLFile($param);

傳入的文件 在PHP版本5.5以上記得new CURLFile 不然會上傳不成功

 /**
     * http post請求--CURL模擬表單上傳文件
     * @param $url string 請求地址
     * @param $params array 請求參數
     * @param $header array 請求頭
     * @return mixed
     */
    protected function _httpPostImg($url, $params = array() , $header = array())
    {
        $ch = curl_init();//初始化curl
        curl_setopt($ch, CURLOPT_URL, $url);//抓取指定網頁
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);//要求結果為字符串且輸出到屏幕上
        curl_setopt($ch, CURLOPT_TIMEOUT, 500);
        curl_setopt($ch,CURLOPT_FOLLOWLOCATION,1);
        curl_setopt($ch, CURLOPT_POST, true);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
        $header = array('Content-Type: multipart/form-data'); //請求頭記得變化-不同的上傳方式
        curl_setopt($ch, CURLOPT_HTTPHEADER, $header);

        //當需要通過curl_getinfo來獲取發出請求的header信息時,該選項需要設置為true
        curl_setopt($ch, CURLINFO_HEADER_OUT, true);

        $response = curl_exec($ch);
        //打印請求的header信息
        //$request_header = curl_getinfo($ch, CURLINFO_HEADER_OUT);
        //print_r($ch);exit;
        curl_close($ch);
        return $response;
    }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM