开发小程序也有一年多了,根据常见的情况,生成二维码还是经常用到。
比如扫码点餐小程序,需要为每一张桌子生成一个专属二维码用于区分不同桌号。
小程序不能直接分享到朋友圈或者通过其他非微信传播,但是可以生成一个二维码图片,用图片发送从而分享
在小程序里生成分享图片目前有三种方式。
第一种,用小程序的画布canvas生成图片,然后直接保存画布画的图片到系统相册,根据笔者亲测,不太完美。
第二种,用PHP图片处理类生成图片,然后在小程序前端显示。
第三张,生成一个专属分享页面,引导用户截屏分享。
但不管是哪一种方式,都需要用到微信的生成二维码或者小程序码接口。
微信提供了三种方式生成,
createWXAQRCode 生成数量限制为10万的小程序二维码。
getWXACode生成数量限制为10万的小程序码。
getWXACodeUnlimit生成无数量限制的小程序码。
大家可以根据场景采用不同的方式。注意不同方式参数不一样,getWXACodeUnlimit方法的参数需要通过scene传递。
分享如下PHP生成无限制数量小程序码的代码
$AccessTokenModel = new \Api\Model\AccessTokenModel();
$access_token = $AccessTokenModel->get_token();
$url = ‘https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=’.$access_token;
$data[‘scene’] = ‘id=’.$goods_id.’&i=’.$item_id.’&m=’.$member_id;
$data[‘page’] = ‘pages/detail/index’;
$data[‘width’] = ‘280px’;
$data_json = json_encode($data);
$result = sendCmd($url,$data_json);
$code_pic = ‘Public/code/code-‘.$id.’-‘.$item_id.’.jpeg’;
if(file_put_contents($code_pic,$result) > 0) {
//生成成功处理
} else {
//生成失败处理
}