$file = 'file'; //要上传的文件
$url = 'url';//target url
$fields['f'] = '@'.$file;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url );
curl_setopt($ch, CURLOPT_POST, 1 );
curl_setopt($ch, CURLOPT_POSTFIELDS, $fields );
curl_exec( $ch );
if ($error = curl_error($ch) ) {
die($error);
}
curl_close($ch);
这里说明一下CURLOPT_POSTFIELDS这个参数如果是POST字符串时,可以用形如“name=value&...”的字符串,如果post文件,就必须要用数组,并且文件名格式为"@绝对路径",这是 CURL 会帮你做 multipart/form-data 编码。
也就是说 post请求的时候 参数形式 可以是“name=value&...” 也可以是数组形式$data['name']=value,,如果只传个$data那将无法接受
我应该找个CURL的手册看,比用google快多了,欲速则不达呀。
有话要说