微信小程序+PHP 获取用户手机号

获取手机号 | 微信开放文档 (qq.com)

用open_type = “getPhoneNumber ”方法获取到以下信息

这边需要将code值传入后端

wx.request({
      url: 'http://www.***.com/phone',
      data:{
        code:code
      },
      method:"POST",
      success:res=>{
        console.log(res);
      }
    })

后端 进行curl的封装

function geturl($url){
    $headerArray =array("Content-type:application/json;","Accept:application/json");
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch,CURLOPT_HTTPHEADER,$headerArray);
    $output = curl_exec($ch);
    curl_close($ch);
    $output = json_decode($output,true);
    return $output;
}

function posturl($url,$data){
    $data  = json_encode($data);
    $headerArray =array("Content-type:application/json;charset='utf-8'","Accept:application/json");
    $curl = curl_init();
    curl_setopt($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST,FALSE);
    curl_setopt($curl, CURLOPT_POST, 1);
    curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
    curl_setopt($curl,CURLOPT_HTTPHEADER,$headerArray);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    $output = curl_exec($curl);
    curl_close($curl);
    return json_decode($output,true);
}

然后调用小程序文档中提供的接口获取到 access_token 值

auth.getAccessToken | 微信开放文档 (qq.com)

$access_token = geturl('https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=自己的AppID&secret=小程序密钥');

得到 access_token 值再次调用接口  需注意获取手机号是post请求

phonenumber.getPhoneNumber | 微信开放文档 (qq.com)

posturl('https://api.weixin.qq.com/wxa/business/getuserphonenumber?access_token='.$access_token['access_token'],['code'=>$code]);

然后将获取到的值传递给前端

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值