Home > Article > Backend Development > php通过curl上传图片到https的服务器需要哪些要注意的。求调教
得到
require_once '../wechat/class/configWX.php';
error_reporting(E_ALL);
//图片上传
$file = dirname(__FILE__).'\zzz.jpg'; //要上传的文件
$ch = curl_init();
$url = 'https://api.weixin.qq.com/merchant/common/upload_img?access_token='.$_SESSION['access_token'].'&filename=zzz.jpg';
echo $url;
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1 );
curl_setopt($ch, CURLOPT_POSTFIELDS, $file);
$data = curl_exec($ch);//执行curl
echo $data.'
';
curl_close($ch);
curl_setopt($ch, CURLOPT_POSTFIELDS, "file=@$file");
标题描述不对,是通过https的协议上传图片。
我传的参数不对,应该是用$data=file_get_contents('url');curl_setopt($ch, CURLOPT_POSTFIELDS, $data).这是传给微信的所以跟正常的不太一样。