抖音 开放平台 php curl 上传视频

已经封装成函数直接拿去用!

    /**
      * @param $file 文件路径 
      * @param $url  请求url 带上传凭证
    */    
    function curl_upload_file($url,$file) {
        $payload = '';
        $params  = "--ABC1234\r\n"
            . "Content-Type: application/x-www-form-urlencoded\r\n"
            . "\r\n"
            . $payload . "\r\n"
            . "--ABC1234\r\n"
            . "Content-Type: video/mp4\r\n"
            . "Content-Disposition: form-data; name=\"video\"; filename=\"1.mp4\"\r\n"
            . "\r\n"
            . file_get_contents($file) . "\r\n"
            . "--ABC1234--";

        $first_newline      = strpos($params, "\r\n");
        $multipart_boundary = substr($params, 2, $first_newline - 2);
        $request_headers    = array();
        $request_headers[]  = 'Content-Length: ' . strlen($params);
        $request_headers[]  = 'Content-Type: multipart/form-data; boundary=' . $multipart_boundary;

        $ch = curl_init($url);
        curl_setopt($ch, CURLOPT_POST, 1);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
        curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0);
        curl_setopt($ch, CURLOPT_HTTPHEADER, $request_headers);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        $reply = curl_exec($ch);
        return json_decode($reply,true);

    }

 

你可能感兴趣的:(curl)