PHP生成带参数的小程序码
生成小程序码并携带参数
我们平时在开发微信小程序时,会遇到如下场景,需要制作某个推广链接,然后需要生成一个专属小程序码,扫描这个专属二维码时,获取到推广的链接携带的参数跳转到指定的界面。这个看似很难,其实特别简单,阅读微信官方的接口就很容易弄明白,获取小程序的appid和小程序的secret,然后生成token,再通过这个token请求微信那边的生成小程序码的接口,完事!
第一步:检测token是否存在于redis中且没有过期,如果都满足就直接到下一步,否则就通过接口获取token后将token存入redis。第二步:调用token,设置生成小程序码的页面、参数、和版本(开发版、体验版、正式版),生成小程序码。生成的小程序码是二进制内容,可以转换成base64编码后存入redis方便调用,也可以直接展示为图片或直接保存为图片。
<?php
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
$getToken = $redis->exists("Token");
if ($getToken==0){$appid = '小程序appid';$secret = '小程序secret';$urlss = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid='.$appid.'&secret='.$secret;$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $urlss);curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);$output = curl_exec($ch);curl_close($ch);$redis->set("Token", $output);$redis->expire("Token","7000");
}
$tk = json_decode($redis->get("Token"))->access_token;$urlss = 'https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token='.$tk;
$ch = curl_init();
$datass = json_encode(array("page"=>"pages/login/login","env_version"=>"develop", "scene"=>"aa&bb&cc"));
curl_setopt($ch, CURLOPT_URL, $urlss);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $datass);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, false);
$output1 = curl_exec($ch);
curl_close($ch);
转换成base64编码
$imgUrl = 'data:image/jpg;base64,'.base64_encode($output1);
直接在页面显示为图片
header("Content-type: image/jpg;charset=gb2312");
echo $output1;
保存为图片
$url = "test.jpg";
file_put_contents($url, $output1, true);
PHP生成带参数的小程序码相关推荐
- 基于thinkphp6的上传excel批量生成带参数的小程序码功能
前言 最近公司说要帮人生成一批一店一码的小程序码,本来想找第三方生成一下就好了,奈何数量有点多,满足此需求的只有某料二维码,但某料二维码批量上传生成小程序码需要小程序的管理员授权,因为某些原因,拿不到 ...
- 微信小程序如何批量生成带参数的小程序码,无需开发
工作中遇到一个需求,批量生成小程序码,但是通过微信公众平台生成只能一次生成一张,如果通过小程序提供是接口去调用太费事了而且文档不全面,所以最终找到了一个第三方的网站-草料二维码生成器,使用后还不错,分 ...
- 微信小程序通过云函数生成带参数的小程序码
小程序云开发还是挺强大啊,以前动不动就需要后端攻城狮进行操作,现在没后端啥事了,但是头发却开始紧张了啊!o(╥﹏╥)o 公众平台模式: 在没有用云函数时,只能先在微信公众平台去生成带参数的小程序码,接 ...
- h5生成带参数的小程序二维码,在小程序上获取生成的参数验证
生成二维码后,保存下来,在微信开发者工具中点击添加编译模式, const en = encodeURIComponent("phone=15526262525&name=莹莹& ...
- 批量生成100万张小程序码?了解一下。
引言 最近有一个生成很多小程序码的需求,生成的小程序码还要嵌入在指定的图片模板上,就去找轮子,没找到合适的轮子..无奈之下就决定去撸一个.目前已经完成并发布npm. Github:github.com ...
- 微信生成带参数的二维码,合成海报,扫码后推送小程序?
微信服务号渠道二维码功能,支持生成带参数二维码,合成海报二维码,微信扫码后推送内容:结合微号帮平台48小时信息推送,推送微信小程序. 带参二维码 海报二维码 微信扫码后回复 48小时信息推送 在微号帮 ...
- 微信公众号怎么生成带参数的二维码?
每位运营过微信公众平台的野生小编都知道,微信提供给开发者的文档是很高深的,最近为了弄个带参数的二维码,同样技术小白的小编也死了不少脑细胞了,然而我终于知道官方生成带参数的二维码的方法了. 1.注意事项 ...
- 微信公众号之生成带参数的二维码
生成带参数的二维码 为了满足用户渠道推广分析和用户帐号绑定等场景的需要,公众平台提供了生成带参数二维码的接口.使用该接口可以获得多个带不同场景值的二维码,用户扫描后,公众号可以接收到事件推送.目前有2 ...
- asp生成带参数的二维码并合成推广海报图片,asp合并合成推广海报图片asp代码
最近做的一个项目中,客户要求用asp生成二维码,然后合并到一张背景图片上,合并生成一张推广海报来,可把我愁坏了,经过一个晚上的努力,成功了,下面把这个:asp生成带参数的二维码并合成推广海报,asp合 ...
最新文章
- 如何在1分钟内CSDN收益1000万,走上人生巅峰?!
- 按下回车表示确定提交
- 凝聚406万开发者 飞桨十大发布提速产业智能化
- 关于使用DataGrid的ButtonColumn,动态添加DataGrid列,实现不定列n个文件的下载功能...
- 移动开发平台性能比較
- Dropwizard:轻松的RESTful JSON HTTP Web服务
- 解决:Connect to xx.xx.xxx.xx :8081 [/xx.xx.xx.xx] failed: Connection refu sed: connect -> [H
- 实验楼python挑战答案_python基础知识
- 骚年快醒醒,你适合转行做前端吗?
- Xcode误删Images.xcassets文件夹的恢复办法(Assets.xcassets)
- 深入浅出 妙用Javascript中apply、call、bind
- 程序员简历大曝光,让HR哭笑不得,网友:太老实了!
- 20个令程序员泪流满面的瞬间
- 30个值得推荐的数据可视化工具--转
- 树莓派小车简单的迷宫算法-基于Python设计
- 腾讯云服务器IP地址绑定域名步骤
- 18、【易混淆概念集】第十一章2 实施定量风险分析 模拟、敏感性分析、决策树分析 风险应对策略 消极/威胁应对策略 积极/机会风险应对策略 开拓和提高的区别
- Java学习路线:day6 数组
- Java毕业设计_基于SSM的美食食谱分享网站的设计与实现
- 请介绍一下ivac 2L