微擎的框架内,图片选择后,获取的是那个字符串是media_id,相当于你这张图片在微信的图片服务器里面的id
要求是:获取https://mmbiz.qpic.cn/mmbiz_jpg/…… 微信图片的路径
而微信并没有根据media_id获取图片路径的接口,so,我们这里的思路是根据media_id将图片下载到本地,再讲图片通过接口上传到微信资源中,得到图片的media_id和图片的url,然后获取url
这里的getmateial这些方法都是微擎自带的类库,如果没有可以自己写接口调用就是了
foreach ($data['photo_list'] as $k=>$v){
if(strstr($v["photo_url"],"https://")==false){
//先根据media_id下载到本地
$photo_info=$this->getMaterial($v["photo_url"]);
//再上传到微信,获取到微信的图片地址
$up_info=$this->uploadMediaFixed($photo_info,"image");
//要上传的图片地址必须要为微信地址
$data['photo_list'][$k]["photo_url"]=$up_info['url'];
}
}
来源:oschina
链接:https://my.oschina.net/u/3360064/blog/1858889