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

所属分类: 网络编程 / PHP编程 阅读数: 722
收藏 0 赞 0 分享

前言

在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();

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

总结

更多精彩内容其他人还在看

Python中使用django form表单验证的方法

这篇文章主要介绍了Python中使用django form表单验证的方法,需要的朋友可以参考下
收藏 0 赞 0 分享

php文件管理基本功能简单操作

这篇文章主要为大家详细介绍了php文件管理基本功能简单操作的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

php常用数组函数实例小结

这篇文章主要介绍了php常用数组函数,结合实例形式总结分析了php常用数组函数array_merge、array_slice及array_map的功能与使用技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

详解ThinkPHP3.2.3验证码显示、刷新、校验

本篇文章主要介绍了ThinkPHP3.2.3验证码显示、刷新、校验 ,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
收藏 0 赞 0 分享

php常用正则函数实例小结

这篇文章主要介绍了php常用正则函数,结合实例形式总结分析了php正则表达式常用函数,包括preg_replace、preg_match及preg_match_all函数的功能、使用方法与相关注意事项,需要的朋友可以参考下
收藏 0 赞 0 分享

php常用字符函数实例小结

这篇文章主要介绍了php常用字符函数,结合实例形式总结分析了php常用字符函数substr、preg_match、strpos、dirname及str_split功能、用法与相关注意事项,需要的朋友可以参考下
收藏 0 赞 0 分享

PHP实现的XML操作类【XML Library】

这篇文章主要介绍了PHP实现的XML操作类,涉及php针对数组、xml的转换、序列化、反序列化等相关操作技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

详解thinkphp实现excel数据的导入导出(附完整案例)

本篇文章主要介绍了thinkphp实现excel数据的导入导出,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
收藏 0 赞 0 分享

PHP实现截取中文字符串不出现?号的解决方法

这篇文章主要介绍了PHP实现截取中文字符串不出现?号的解决方法,涉及php字符串遍历及编码转换等相关操作技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

微信公众号模板消息群发php代码示例

这篇文章主要为大家详细介绍了微信公众号模板消息群发php代码示例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享
查看更多