其中$param里面有文件类型的时候,需要将文件进行处理,ps:必须指定文件类型image/jpeg,我就是因为没有指定文件类型才导致那边文件一直接收不到。谨记。
$params ['file'] = new CURLFile(realpath("文件路径"),'image/jpeg');
public 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信息
curl_close($ch);
return $response;
}