首頁 > 後端開發 > php教程 > php curl模拟post中如何使用multipart上传文件

php curl模拟post中如何使用multipart上传文件

WBOY
發布: 2016-06-06 20:14:35
原創
1657 人瀏覽過

使用新浪微博api写图床时出现了20007错误,文档说需要用multipart上传文件。php中curl模拟post该如何用multipart上传文件?

我使用的代码:

<code>$uri = "https://upload.api.weibo.com/2/statuses/upload.json";
$data = array (
        'access_token' => '',
        'status' => '',
        'pic' => ''
);
 
$ch = curl_init ();
curl_setopt ( $ch, CURLOPT_URL, $uri );
curl_setopt ( $ch, CURLOPT_POST, 1 );
curl_setopt ( $ch, CURLOPT_HEADER, 0 );
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data );
$return = curl_exec ( $ch );
curl_close ( $ch );
 
print_r($return);</code>
登入後複製
登入後複製

回复内容:

使用新浪微博api写图床时出现了20007错误,文档说需要用multipart上传文件。php中curl模拟post该如何用multipart上传文件?

我使用的代码:

<code>$uri = "https://upload.api.weibo.com/2/statuses/upload.json";
$data = array (
        'access_token' => '',
        'status' => '',
        'pic' => ''
);
 
$ch = curl_init ();
curl_setopt ( $ch, CURLOPT_URL, $uri );
curl_setopt ( $ch, CURLOPT_POST, 1 );
curl_setopt ( $ch, CURLOPT_HEADER, 0 );
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data );
$return = curl_exec ( $ch );
curl_close ( $ch );
 
print_r($return);</code>
登入後複製
登入後複製

看 curl的代码应该是没有什么大问题 ,不知道是不是你几个值为空的原因,
"pic"=>"@/path/to/myfile.jpg",

当你的$data是数组的时候 curl自动会以multipart方式post的
再加一句,数组必须 为K=>v格式的数组

相關標籤:
php
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板