Yii实现微信公众号场景二维码的方法实例


Posted in PHP onAugust 30, 2020

前言

在Yii中实现场景二维码这里我使用的是easywechat插件,安装easywechat插件

composer require jianyan74/yii2-easy-wechat

github地址: https://github.com/jianyan74/yii2-easy-wechat

easywechat文档地址: https://www.easywechat.com/docs/master/overview

生成场景二维码前提:

微信的场景二维码功能主要是生成一个微信二维码,然后在手机使用微信扫描此二维码时,会触发微信通知,所以我们在生成场景二维码之前进行微信的服务端验证

1:服务端验证

$app = Yii::$app->wechat->getApp(); 
$server = $app->server; 
$response = $server->serve(); 
$response->send(); 
exit();

服务端验证代码完成之后在微信公众号进行服务端验证即可

2:生成场景二维码

$app = Yii::$app->wechat->getApp();
$app->server->push(function ($message) use ($app) {
 switch ($message['MsgType']){
  case 'event':
  //扫码事件:SCAN 订阅事件:subscribe
   if (isset($message['Event']) && ($message['Event'] == 'SCAN' || $message['Event'] == 'subscribe')) {
    $openId = $message['FromUserName'];//扫面用户的openID
    //获取参数
    if ($message['Event'] == 'SCAN') {
     $code= $message['EventKey'];
    } else {
     $code= str_replace('qrscene_', '', $message['EventKey']);
    }
   //发送图文消息
    $items = [
     new NewsItem([
      'title'=> '图文标题',
      'description' => '图文描述',
      'url' => '图文链接',
      'image'=> '图文图片,
     ]),
    ];
    return new News($items);
   }
   break;
  default:
   break;
 }
});
$server = $app->server;
$response = $server->serve();
$response->send();
exit();

根据如上就可以实现场景二维码

总结

到此这篇关于Yii实现微信公众号场景二维码的文章就介绍到这了,更多相关Yii实现微信公众号场景二维码内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

PHP 相关文章推荐
用PHP开发GUI
Oct 09 PHP
PHP explode()函数用法、切分字符串
Oct 03 PHP
解析thinkphp的左右值无限分类
Jun 20 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(四)
Jun 23 PHP
图解找出PHP配置文件php.ini的路径的方法
Aug 20 PHP
PHP中使用break跳出多重循环代码实例
Jan 21 PHP
CentOS安装php v8js教程
Feb 26 PHP
使用ThinkPHP生成缩略图及显示
Apr 27 PHP
PHP实现根据数组某个键值大小进行排序的方法
Mar 13 PHP
PDO::quote讲解
Jan 29 PHP
PHP http请求超时问题解决方案
Nov 13 PHP
php中array_fill函数的实例用法
Mar 02 PHP
Swoole源码中如何查询Websocket的连接问题详解
Aug 30 #PHP
PHP常用header头定义代码示例汇总
Aug 29 #PHP
PHP isset()及empty()用法区别详解
Aug 29 #PHP
PHP实现简单日历类编写
Aug 28 #PHP
PHP实现文件上传与下载
Aug 28 #PHP
PHP实现计算器小功能
Aug 28 #PHP
PHP实现简易图形计算器
Aug 28 #PHP
You might like
《星际争霸2》终章已出 RTS时代宣告终结
2017/02/07 星际争霸
《猛禽小队》:DC宇宙的又一超级大烂片
2020/04/09 欧美动漫
php strnatcmp()函数的用法总结
2013/11/27 PHP
php设计模式之适配器模式原理、用法及注意事项详解
2019/09/24 PHP
如何让您的中波更粗更长 - 中波框形天线制作
2021/03/10 无线电
js,jQuery 排序的实现代码,网页标签排序的实现,标签排序
2011/04/27 Javascript
JavaScript实现页面滚动图片加载(仿lazyload效果)
2011/07/22 Javascript
jquery中使用ajax获取远程页面信息
2011/11/13 Javascript
如何正确使用javascript 来进行我们的程序开发
2014/06/23 Javascript
JavaScript中操作字符串之localeCompare()方法的使用
2015/06/06 Javascript
javascript实现简单的分页特效
2015/08/12 Javascript
easyui window refresh 刷新两次的解决方法(推荐)
2016/05/18 Javascript
JavaScript DOM节点操作方法总结
2016/08/23 Javascript
jquery 属性选择器(匹配具有指定属性的元素)
2016/09/06 Javascript
Angularjs中的ui-bootstrap的使用教程
2017/02/19 Javascript
jquery仿苹果的时间/日期选择效果
2017/03/08 Javascript
js编写选项卡效果
2017/05/23 Javascript
Angular搜索场景中使用rxjs的操作符处理思路
2018/05/30 Javascript
微信小程序实现topBar底部选择栏效果
2018/07/20 Javascript
Vue自定义toast组件的实例代码
2018/08/15 Javascript
vuex的module模块用法示例
2018/11/12 Javascript
如何使用less实现随机下雪动画详解
2019/01/02 Javascript
Vue实现图书管理小案例
2020/12/03 Vue.js
详解基于element的区间选择组件校验(交易金额)
2021/01/07 Javascript
python转换摩斯密码示例
2014/02/16 Python
Python基于smtplib实现异步发送邮件服务
2015/05/28 Python
python excel使用xlutils类库实现追加写功能的方法
2018/05/02 Python
Python函数的参数常见分类与用法实例详解
2019/03/30 Python
Python-jenkins 获取job构建信息方式
2020/05/12 Python
使用BeautifulSoup4解析XML的方法小结
2020/12/07 Python
pycharm配置安装autopep8自动规范代码的实现
2021/03/02 Python
CSS中的字体大小设置属性总结
2016/05/24 HTML / CSS
使用canvas绘制贝塞尔曲线
2014/12/17 HTML / CSS
学习党课思想汇报
2013/12/29 职场文书
大学生职业规划范文:象牙塔生活的四年计划
2014/01/14 职场文书
物业管理工作方案
2014/05/10 职场文书