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下获取客户端ip地址的函数
Mar 15 PHP
php中可能用来加密字符串的函数[base64_encode、urlencode、sha1]
Jan 16 PHP
在wamp集成环境下升级php版本(实现方法)
Jul 01 PHP
浅谈php正则表达式中的非贪婪模式匹配的使用
Nov 25 PHP
yii2中添加验证码的实现方法
Jan 09 PHP
Zend Framework分页类用法详解
Mar 22 PHP
PHP strip_tags保留多个HTML标签的方法
May 22 PHP
用HTML/JS/PHP方式实现页面延时跳转的简单实例
Jul 18 PHP
PHP实现Google plus的好友拖拽分组效果
Oct 21 PHP
thinkPHP微信分享接口JSSDK用法实例
Jul 07 PHP
php实现基于pdo的事务处理方法示例
Jul 21 PHP
Laravel框架中Blade模板的用法示例
Aug 30 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
img的onload的另类用法
2008/01/10 Javascript
jQuery AnythingSlider滑动效果插件
2010/02/07 Javascript
使用原生javascript创建通用表单验证——更锋利的使用dom对象
2011/09/13 Javascript
jQuery动画效果-fadeIn fadeOut淡入浅出示例代码
2013/08/28 Javascript
jQuery自定义事件的简单实现代码
2014/01/27 Javascript
jQuery validate+artdialog+jquery form实现弹出表单思路详解
2016/04/18 Javascript
在javascript中使用com组件的简单实现方法
2016/08/17 Javascript
jQuery使用$获取对象后检查该对象是否存在的实现方法
2016/09/04 Javascript
jQuery自定义插件详解及实例代码
2016/12/29 Javascript
js简易版购物车功能
2017/06/17 Javascript
详解create-react-app 2.0版本如何启用装饰器语法
2018/10/23 Javascript
react+ant design实现Table的增、删、改的示例代码
2018/12/27 Javascript
Vue 动态路由的实现及 Springsecurity 按钮级别的权限控制
2019/09/05 Javascript
TypeScript中使用getElementXXX()的示例代码
2019/09/12 Javascript
javascript 数组精简技巧小结
2020/02/26 Javascript
Vue项目打包压缩的实现(让页面更快响应)
2020/03/10 Javascript
[03:07]2015国际邀请赛选手档案EHOME.rOtK 是什么让他落泪?
2015/07/31 DOTA
浅析Python中MySQLdb的事务处理功能
2016/09/21 Python
Python 绘图和可视化详细介绍
2017/02/11 Python
http请求 request失败自动重新尝试代码示例
2018/01/25 Python
Python爬取成语接龙类网站
2018/10/19 Python
Python实现通过解析域名获取ip地址的方法分析
2019/05/17 Python
Python自动采集微信联系人的实现示例
2020/02/28 Python
CSS3 Media Queries详细介绍和使用实例
2014/05/08 HTML / CSS
html5 offlline 缓存使用示例
2013/06/24 HTML / CSS
J.Crew官网:美国知名休闲服装品牌
2017/05/19 全球购物
美国酒店控股公司:Choice Hotels
2018/06/15 全球购物
什么是servlet链?
2014/07/13 面试题
乐观大学生的自我评价
2014/01/10 职场文书
工程安全员岗位职责
2014/03/09 职场文书
国际贸易毕业生自荐书
2014/06/22 职场文书
写给父母的感谢信
2015/01/22 职场文书
2016党员发展对象培训心得体会
2016/01/08 职场文书
执行力心得体会范文
2016/01/11 职场文书
java后台调用接口及处理跨域问题的解决
2022/03/24 Java/Android
Java实现简单小画板
2022/06/10 Java/Android