欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php通过curl上传图片到https的服务器需要哪些要注意的。求调教

程序员文章站 2022-05-30 17:33:47
...

得到
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).这是传给微信的所以跟正常的不太一样。