Yii使用EasyWechat实现小程序获取用户的openID的方法

 更新时间:2020年04月29日 09:35:34   作者:huaweichenai  
这篇文章主要介绍了Yii使用EasyWechat实现小程序获取用户的openID的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

一:安装EasyWechat

EasyWechat文档:https://www.easywechat.com/docs

在Yii使用EasyWechat,有两个拓展可以使用,分别为jianyan74/yii2-easy-wechat 适用于 EasyWeChat 4.x,max-wen/yii2-easy-wechat 适用于 EasyWeChat 3.x,这里我是用的是jianyan74/yii2-easy-wechat拓展

composer require jianyan74/yii2-easy-wechat

二:配置EasyWechat

1:在config/main.php 的 component中添加

'wechat' => [ 
  'class' => 'jianyan\easywechat\Wechat', 
  'userOptions' => [], // 用户身份类参数 
  'sessionParam' => 'wechatUser', // 微信用户信息将存储在会话在这个密钥 
  'returnUrlParam' => '_wechatReturnUrl', // returnUrl 存储在会话中 
  'rebinds' => [ // 自定义服务模块 
  ] 
], 

2:在config/params.php文件中添加(这里我只进行小程序的配置.其他配置可参考EasyWechat官网)

// 微信小程序配置 
'wechatMiniProgramConfig' => \[ 
  'app\_id' => 'XXXX', 
  'secret' => 'XXXX', 
  // 下面为可选项 
  // 指定 API 调用返回结果的类型:array(default)/collection/object/raw/自定义类名 
  'response\_type' => 'array', 
  //日志配置 
  'log' => \[ 
    'level' => 'debug', 
    'file' => dirname(dirname(\_\_DIR\_\_)) . '/api/runtime/wechat.log', 
  \], 
\], 

三:根据前端传来的code获取用户的openID

$request = Yii::$app->getRequest(); 
$miniProgram = Yii::$app->wechat->miniProgram; 
$code2Session = $miniProgram->auth->session($request->post('code', '')); 
$openID = $code2Session\['openid'\];//用户的openID 
$sessionKey = $code2Session\['session\_key'\];//session\_key 

四:小程序端的code值获取

在小程序端可以使用wx.login方法来获取code值

wx.login({ 
 success (res) { 
  if (res.code) { 
   //获取code 
   console.log(res.code) 
   }) 
  } else { 
   console.log('登录失败!' + res.errMsg) 
  } 
 } 
})

到此这篇关于Yii使用EasyWechat实现小程序获取用户的openID的方法的文章就介绍到这了,更多相关Yii 小程序获取用户的openID内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • thinkPHP5框架闭包函数与子查询传参用法示例

    thinkPHP5框架闭包函数与子查询传参用法示例

    这篇文章主要介绍了thinkPHP5框架闭包函数与子查询传参用法,结合实例形式分析了thinkPHP5闭包查询与参数传递相关操作技巧,需要的朋友可以参考下
    2018-08-08
  • PHP实现Redis单据锁以及防止并发重复写入

    PHP实现Redis单据锁以及防止并发重复写入

    本篇文章给大家分享了PHP实现Redis单据锁以及如何防止并发重复写入的方法,对此有需要的朋友参考学习下。
    2018-04-04
  • Yii中创建自己的Widget实例

    Yii中创建自己的Widget实例

    这篇文章主要介绍了Yii中创建自己的Widget实现方法,结合具体实例形式较为详细的分析了Yii中创建Widget的步骤与实现技巧,需要的朋友可以参考下
    2016-01-01
  • 又拍云异步上传实例教程详解

    又拍云异步上传实例教程详解

    这篇文章主要介绍了又拍云异步上传实例教程详解的相关资料,需要的朋友可以参考下
    2016-04-04
  • 详解PHP swoole process的使用方法

    详解PHP swoole process的使用方法

    这篇文章主要为大家详细介绍了详解PHP swoole process的使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08
  • 分享PHP header函数使用教程

    分享PHP header函数使用教程

    在php语言中,header()这个函数很有用的,尤其在用到ajax时候,他会帮你解决一些意想不到的问题。下面是header的一些详细讲解。希望对phper有帮助
    2013-09-09
  • Windows7下PHP开发环境安装配置图文方法

    Windows7下PHP开发环境安装配置图文方法

    备花点时间学习下PHP,于是在自己机器上配置了下PHP的开发和运行环境。之前在Windows Server 2003 OS中手工配置过,WEB服务器是IIS。这次是在自己机器上配置,找了个简单方式。
    2010-05-05
  • 微信支付开发教程(一)微信支付URL配置

    微信支付开发教程(一)微信支付URL配置

    现阶段微信火的厉害,所以相应的关于微信的开发需求也就多了起来,这个系列我们就来谈谈微信支付的开发,本文是第一篇,微信支付URL配置
    2014-05-05
  • php图片合成方法(多张图片合成一张)

    php图片合成方法(多张图片合成一张)

    下面小编就为大家分享一篇php图片合成方法(多张图片合成一张),具有很好的参考价值。希望对大家有所帮助。一起跟随小编过来看看吧
    2017-11-11
  • 使用php计算排列组合的方法

    使用php计算排列组合的方法

    本文用PHP要解决的数学问题是算出C(a,1) * C(b, 1) * ... * C(n, 1)的组合情况,其中C(n, 1)代表从n个元素里任意取一个元素
    2013-11-11

最新评论