php curl上传图片需要用到CURLFile 对象
CURLFile curl_file_create ( string $filename [, string $mimetype [, string $postname ]] )
$url = 'http://xxx.com';
$name = 'file';
if (!isset($_FILES[$name])) {
return $this->error('请上传文件');
}
// 创建一个 cURL 句柄
$ch = curl_init($url);
// 创建一个 CURLFile 对象
//php5.5版本以后不再通过@符号进行上传了,需要通过这种方式或者 new \CURLFile()对象都可以 ,给定三个参数为一下参数,可复制这段代码自己测试一下,是可行的
$file = curl_file_create($_FILES[$name]['tmp_name'], $_FILES[$name]['type'], $_FILES[$name]['name']);
// 设置 POST 数据
$data = ['file' => $file];
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
// 执行句柄
$result = curl_exec($ch);
curl_close($ch);