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


Posted in PHP onNovember 23, 2021

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

上代码

wxml:

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

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

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

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 的后台代码了,再写代码前 需要先下载一个官方提供的文件夹

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

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

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

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

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

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

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

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

接下来 在你的控制器中 引入  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授权登陆后获取手机号

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

PHP 相关文章推荐
一个PHP的QRcode类与大家分享
Nov 13 PHP
浅析PHP substr,mb_substr以及mb_strcut的区别和用法
Jun 21 PHP
关于ob_get_contents(),ob_end_clean(),ob_start(),的具体用法详解
Jun 24 PHP
PHP实现股票趋势图和柱形图
Feb 07 PHP
PHP判断字符串长度的两种方法很实用
Sep 22 PHP
PHP类的声明与实例化及构造方法与析构方法详解
Jan 26 PHP
CI框架无限级分类+递归的实现代码
Nov 01 PHP
利用PHP访问带有密码的Redis方法示例
Feb 09 PHP
php smtp实现发送邮件功能
Jun 22 PHP
PHP使用标准库spl实现的观察者模式示例
Aug 04 PHP
Thinkphp 框架扩展之Widget扩展实现方法分析
Apr 23 PHP
PHP数组Key强制类型转换实现原理解析
Sep 01 PHP
PHP遍历数组的6种方式总结
Nov 17 #PHP
关于PHP数组迭代器的使用方法实例
php双向队列实例讲解
Nov 17 #PHP
如何解决php-fpm启动不了问题
Nov 17 #PHP
一次项目中Thinkphp绕过禁用函数的实战记录
php修改word的实例方法
Nov 17 #PHP
PHP获取学生成绩的方法
Nov 17 #PHP
You might like
php array_flip() 删除数组重复元素
2009/01/14 PHP
php.ini修改php上传文件大小限制的方法详解
2013/06/17 PHP
Zend Framework使用Zend_Loader组件动态加载文件和类用法详解
2016/12/09 PHP
THINKPHP截取中文字符串函数实例代码
2017/03/20 PHP
PHP实现网站访问量计数器
2017/10/27 PHP
PHP终止脚本运行三种实现方法详解
2020/09/01 PHP
NodeJS的模块写法入门(实例代码)
2012/03/07 NodeJs
仿百度的关键词匹配搜索示例
2013/09/25 Javascript
原生js实现类似弹窗抖动效果
2015/04/02 Javascript
深入讲解AngularJS中的自定义指令的使用
2015/06/18 Javascript
使用jquery获取url及url参数的简单实例
2016/06/14 Javascript
漫谈JS引擎的运行机制 你应该知道什么
2016/06/15 Javascript
浅析Javascript的自动分号插入(ASI)机制
2016/09/29 Javascript
微信小程序 触控事件详细介绍
2016/10/17 Javascript
Node.js读取文件内容示例
2017/03/07 Javascript
微信小程序 POST请求的实例详解
2017/09/29 Javascript
Vue中$refs的用法详解
2018/06/24 Javascript
解决layui 复选框等内置控件不显示的问题
2018/08/14 Javascript
简单介绍Python中的filter和lambda函数的使用
2015/04/07 Python
使用Python的Django框架实现事务交易管理的教程
2015/04/20 Python
Python二分法搜索算法实例分析
2015/05/11 Python
Python3多目标赋值及共享引用注意事项
2019/05/27 Python
python自动发邮件总结及实例说明【推荐】
2019/05/31 Python
Django 路由控制的实现
2019/07/17 Python
Python 硬币兑换问题
2019/07/29 Python
PyQt5 文本输入框自动补全QLineEdit的实现示例
2020/05/13 Python
python使用Word2Vec进行情感分析解析
2020/07/31 Python
python 爬取英雄联盟皮肤并下载的示例
2020/12/04 Python
波兰化妆品和护肤品购物网站:eKobieca
2019/08/30 全球购物
Nixon手表英国官网:美国尼克松手表品牌
2020/02/10 全球购物
大学生学业生涯规划
2014/01/05 职场文书
关于孝道的演讲稿
2014/05/21 职场文书
八项规定对照检查材料
2014/08/31 职场文书
讲座开场白台词和结束语
2015/05/29 职场文书
战友聚会致辞
2015/07/28 职场文书
2016年大学生暑假爱心支教活动策划书
2015/11/26 职场文书