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 相关文章推荐
session 的生命周期是多长
Oct 09 PHP
php 中include()与require()的对比
Oct 09 PHP
PHP 设置MySQL连接字符集的方法
Jan 02 PHP
php中的三元运算符使用说明
Jul 03 PHP
phpmailer发送gmail邮件实例详解
Jun 24 PHP
php使用strtotime和date函数判断日期是否有效代码分享
Dec 25 PHP
php实现微信公众平台账号自定义菜单类
Oct 11 PHP
thinkPHP2.1自定义标签库的导入方法详解
Jul 20 PHP
php版微信开发之接收消息,自动判断及回复相应消息的方法
Sep 23 PHP
PHP实现绘制二叉树图形显示功能详解【包括二叉搜索树、平衡树及红黑树】
Nov 16 PHP
PHP whois查询类定义与用法示例
Apr 03 PHP
php连接mysql数据库最简单的实现方法
Sep 24 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
PL-880隐藏功能
2021/03/01 无线电
PHP安全配置
2006/12/06 PHP
用PHP写的基于Memcache的Queue实现代码
2011/11/27 PHP
PHP得到mssql的存储过程的输出参数功能实现
2012/11/23 PHP
php实现修改新闻时删除图片的方法
2015/05/12 PHP
解决nginx不支持thinkphp中pathinfo的问题
2015/07/21 PHP
phpStudy 2016 使用教程详解(支持PHP7)
2017/10/18 PHP
css图片自适应大小
2007/11/28 Javascript
js 动态添加标签(新增一行,其实很简单,就是几个函数的应用)
2009/03/26 Javascript
Nodejs中自定义事件实例
2014/06/20 NodeJs
JavaScript前补零操作实例
2015/03/11 Javascript
javascript简单实现类似QQ头像弹出效果的方法
2015/08/03 Javascript
JavaScript中解决多浏览器兼容性23个问题的快速解决方法
2016/05/19 Javascript
Angularjs实现上传图片预览功能
2017/09/01 Javascript
JavaScript实现的原生态兼容IE6可调可控滚动文字功能详解
2017/09/19 Javascript
值得收藏的vuejs安装教程
2017/11/21 Javascript
Vue动态控制input的disabled属性的方法
2018/06/26 Javascript
在vue项目实现一个ctrl+f的搜索功能
2020/02/28 Javascript
Laravel 如何在blade文件中使用Vue组件的示例代码
2020/06/28 Javascript
vue组件暴露和.js文件暴露接口操作
2020/08/11 Javascript
[00:34]TI7不朽珍藏III——地穴编织者不朽展示
2017/07/15 DOTA
python动态加载变量示例分享
2014/02/17 Python
Python简单删除目录下文件以及文件夹的方法
2015/05/27 Python
python遍历目录的方法小结
2016/04/28 Python
浅析Python数据处理
2018/05/02 Python
win10安装tensorflow-gpu1.8.0详细完整步骤
2020/01/20 Python
python读取excel进行遍历/xlrd模块操作
2020/07/12 Python
使用jupyter notebook运行python和R的步骤
2020/08/13 Python
大课间活动制度
2014/01/18 职场文书
英文演讲稿开场白
2014/08/25 职场文书
外国人来华邀请函
2015/01/31 职场文书
会计工作岗位职责
2015/02/03 职场文书
2015年人事科工作总结
2015/04/28 职场文书
个人承诺书格式范文
2015/04/29 职场文书
MySQL 分组查询的优化方法
2021/05/12 MySQL
阿里云服务器(windows)手动部署FTP站点详细教程
2022/08/05 Servers