当前位置:首页 > CMS教程 > 其它CMS > 列表

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

发布:smiling 来源: PHP粉丝网  添加日期:2022-03-24 14:48:55 浏览: 评论:0 

这篇文章主要给大家介绍了关于Yii实现微信公众号场景二维码的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。

前言

在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:服务端验证

  1. $app = Yii::$app->wechat->getApp();  
  2. $server = $app->server;  
  3. $response = $server->serve();  
  4. $response->send();  
  5. exit(); 

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

2:生成场景二维码

  1. $app = Yii::$app->wechat->getApp(); 
  2. $app->server->push(function ($messageuse ($app) { 
  3.  switch ($message['MsgType']){ 
  4.   case 'event'
  5.   //扫码事件:SCAN 订阅事件:subscribe 
  6.    if (isset($message['Event']) && ($message['Event'] == 'SCAN' || $message['Event'] == 'subscribe')) { 
  7.     $openId = $message['FromUserName'];//扫面用户的openID 
  8.     //获取参数 
  9.     if ($message['Event'] == 'SCAN') { 
  10.      $code$message['EventKey']; 
  11.     } else { 
  12.      $codestr_replace('qrscene_'''$message['EventKey']); 
  13.     } 
  14.    //发送图文消息 
  15.     $items = [ 
  16.      new NewsItem([ 
  17.       'title'=> '图文标题'
  18.       'description' => '图文描述'
  19.       'url' => '图文链接'
  20.       'image'=> '图文图片, 
  21.      ]), 
  22.     ]; 
  23.     return new News($items); 
  24.    } 
  25.    break
  26.   default
  27.    break
  28.  } 
  29. }); 
  30. $server = $app->server; 
  31. $response = $server->serve(); 
  32. $response->send(); 
  33. exit(); 

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

Tags: Yii二维码

分享到: