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 相关文章推荐
jQuery 源码分析笔记
May 25 PHP
php入门学习知识点八 PHP中for循环基本应用之九九乘法口绝表
Jul 14 PHP
php数组函数序列之ksort()对数组的元素键名进行升序排序,保持索引关系
Nov 02 PHP
PHP写的加密函数,支持私人密钥(详细介绍)
Jun 09 PHP
在yii中新增一个用户验证的方法详解
Jun 20 PHP
PHP json_encode中文乱码问题的解决办法
Sep 09 PHP
PHP登陆后跳转到登陆前页面实现思路及代码
Jan 17 PHP
php rsa加密解密使用详解
Jan 14 PHP
php获取指定(访客)IP所有信息(地址、邮政编码、国家、经纬度等)的方法
Jul 06 PHP
orm获取关联表里的属性值
Apr 17 PHP
PHP实现表单提交时去除斜杠的方法
Dec 26 PHP
PHPMailer ThinkPHP实现自动发送邮件功能
Jun 10 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
基于mysql的bbs设计(四)
2006/10/09 PHP
PHP 5.3.1 安装包 VC9 VC6不同版本的区别是什么
2010/07/04 PHP
php知道与问问的采集插件代码
2010/10/12 PHP
php 操作调试的方法
2012/07/12 PHP
php生成不重复随机数、数组的4种方法分享
2015/03/30 PHP
WordPress开发中短代码的实现及相关函数使用技巧
2016/01/05 PHP
Laravel 的数据库迁移的方法
2017/07/31 PHP
Jquery Validation插件防止重复提交表单的解决方法
2010/03/05 Javascript
浅析ajax请求json数据并用js解析(示例分析)
2013/07/13 Javascript
JavaScript的null和undefined区别示例介绍
2014/09/15 Javascript
node.js中的fs.createReadStream方法使用说明
2014/12/17 Javascript
初识Javascript小结
2015/07/16 Javascript
javascript实现网页中涉及的简易运动(改变宽高、透明度、位置)
2015/11/29 Javascript
微信小程序 devtool隐藏的秘密
2017/01/21 Javascript
使用jQuery实现动态添加小广告
2017/07/11 jQuery
Vue2.0结合webuploader实现文件分片上传功能
2018/03/09 Javascript
vue项目引入字体.ttf的方法
2018/09/28 Javascript
JS散列表碰撞处理、开链法、HashTable散列示例
2019/02/08 Javascript
深入了解JavaScript 私有化
2019/05/30 Javascript
Python牛刀小试密码爆破
2011/02/03 Python
python实现的jpg格式图片修复代码
2015/04/21 Python
利用Python脚本实现ping百度和google的方法
2017/01/24 Python
Python Unittest自动化单元测试框架详解
2018/04/04 Python
使用celery和Django处理异步任务的流程分析
2020/02/19 Python
Python通过字典映射函数实现switch
2020/11/06 Python
Html5内唤醒百度、高德APP的实现示例
2019/05/20 HTML / CSS
英国玛莎百货澳大利亚:Marks & Spencer Australia
2019/08/30 全球购物
Java里面有没有全局变量?为什么?
2015/02/06 面试题
开办饭店创业计划书
2013/12/28 职场文书
九年级语文教学反思
2014/02/04 职场文书
车间机修工岗位职责
2014/02/28 职场文书
教师远程培训感言
2014/03/06 职场文书
2015年教师党员自我评价材料
2015/03/04 职场文书
合理缓解职场压力,让你随时保持最佳状态!
2019/06/21 职场文书
十大最帅动漫男主 碓冰拓海上榜,第一是《灌篮高手》男主角
2022/03/18 日漫
python 实现图片特效处理
2022/04/03 Python