微信小程序结合ThinkPHP5授权登陆后获取手机号

 更新时间:2021年11月23日 09:43:55   作者:Dragon-v  
现在很多小程序都需要获取用户的手机号以方便登录,本文就详细的介绍一下微信小程序结合ThinkPHP5授权登陆后获取手机号,感兴趣的可以了解一下

1.在我们授权登陆后会获取到用户的 sessionKey 这个是获取手机号不可分割的一部分

上代码

wxml:

<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber">获取手机号</button>

js:当我们在调用这个方法的时候可以在控制台输出一下 e 下方用红框框起来的两个也是获取手机号不可分割的一部分

getPhoneNumber: function (e) {
        var that = this;
        console.log(e.detail.errMsg == "getPhoneNumber:ok");
        if (e.detail.errMsg == "getPhoneNumber:ok") {
            wx.request({
                url: 'http://www.phone.com/test/Seek/getPhone',
                data: {
                    encryptedData: e.detail.encryptedData,
                    iv: e.detail.iv,
                    sessionKey: that.data.session_key,
                },
                method: "post",
                success: function (res) {
                    console.log(res);
                }
            })
        }
      },

然后就是Think PHP 5 的后台代码了,再写代码前 需要先下载一个官方提供的文件夹

网址:服务端获取开放数据 | 微信开放文档

 下载好后有四种语言的 我们只要PHP的

 将PHP这个文件夹放到你的 Think PHP 5 的 app 目录下,记得更改文件夹名字,就像这个样

接下来 给 WXBizDataCrypt.php 增加命名空间和引入ErrorCode.php 文件

 

接下来 在你的控制器中 引入  WXBizDataCrypt.php

use app\libs\WXBizDataCrypt;

然后就可以写 PHP 代码了

public function getPhone(){
        $encryptedData = input('encryptedData');
        $iv = input('iv');
        $sessionKey = input('sessionKey');
        $appID = config('appID');
 
        $data = null;
        $pc = new WXBizDataCrypt($appID, $sessionKey);
        $errCode = $pc->decryptData($encryptedData, $iv, $data );
        $data = json_decode($data,true);
        return json($data);
    }

最后在回到小程序运行一遍 就可以看到了

到此这篇关于微信小程序结合ThinkPHP5授权登陆后获取手机号的文章就介绍到这了,更多相关小程序 获取手机号内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • tp5.1 框架查询表达式用法详解

    tp5.1 框架查询表达式用法详解

    这篇文章主要介绍了tp5.1 框架查询表达式用法,结合实例形式详细分析了tp5.1 框架常用查询表达式功能、定义、用法及操作注意事项,需要的朋友可以参考下
    2020-05-05
  • 利用php + Laravel如何实现部署自动化详解

    利用php + Laravel如何实现部署自动化详解

    这篇文章主要给大家介绍了关于利用php + Laravel如何实现部署自动化的相关资料,文中通过示例代码介绍非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-10-10
  • php+lottery.js实现九宫格抽奖功能

    php+lottery.js实现九宫格抽奖功能

    这篇文章主要介绍了php+lottery.js制作九宫格抽奖实例,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-07-07
  • ThinkPHP快速入门实例教程之数据分页

    ThinkPHP快速入门实例教程之数据分页

    这篇文章主要介绍了ThinkPHP快速入门实例教程的数据分页实现过程,需要的朋友可以参考下
    2014-07-07
  • 使用淘宝IP库获取用户ip地理位置

    使用淘宝IP库获取用户ip地理位置

    以前用过GOOGLE地图和百度地图获取过用户地理位置,现在又多了一个方法,那就是使用淘宝IP库获取用户ip地理位置,一起来看代码吧。
    2013-10-10
  • php获取数组长度的方法(有实例)

    php获取数组长度的方法(有实例)

    php获取数组长度的方法,php为我们提供了两个函数可以计算一维数组长度,如count,sizeof都可以直接统计数组长度,还有获取二维数组的方法。
    2013-10-10
  • zend framework文件上传功能实例代码

    zend framework文件上传功能实例代码

    zend framework文件上传功能实例代码,php的版本5.3.8,zend framework的版本1.12,看下面的代码吧,有注释
    2013-12-12
  • php编写的简单页面跳转功能实现代码

    php编写的简单页面跳转功能实现代码

    这篇文章主要介绍了php编写的简单页面跳转功能实现代码,有需要的朋友可以参考一下
    2013-11-11
  • Yii支持多域名cors原理的实现

    Yii支持多域名cors原理的实现

    这篇文章主要介绍了Yii支持多域名cors原理的实现,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-12-12
  • 浅谈PHP进程管理

    浅谈PHP进程管理

    这篇文章主要介绍了PHP进程管理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-03-03

最新评论