php获取微信用户信息用户昵称有图片,超简明php 微信公众号获取用户openid、昵称头像基本信息...

在TP5中配置好 config.php 的appid和 appsecret

如果没有授权信息的,就网页首页自动弹窗获取信息,代码如下。

// 获取GET参数

function getUrlParam(name) {

var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); //构造一个含有目标参数的正则表达式对象

var r = window.location.search.substr(1).match(reg); //匹配目标参数

if (r != null) return unescape(r[2]); return null; //返回参数值

}

// 获取授权

function getCode(){

var appid = '{php}echo config("wxpay.appid");{/php}';

var url = '{php}echo config("app_host");{/php}';

location.href = 'https://open.weixin.qq.com/connect/oauth2/authorize?appid='+appid+'&redirect_uri='+url+'&response_type=code&scope=snsapi_userinfo&state=1#wechat_redirect';

}

// 页面加载完毕事件

$(document).ready(function(){

{if condition="empty($my->weixin)"}

// 授权获得code

var code = getUrlParam('code');

if(code){

// 存在就获取信息

$.ajax({

url: '/api/user/get_mp_user/'+code,

type: 'GET',

success: function(x){

console.log(x);

// alert(JSON.stringify(x));

}

});

}else{

getCode();

}

{/if}

});

PHP后端代码

// 获取公众号用户信息

// @route('/api/user/get_mp_user/:code','get')

public function get_mp_user($code){

$url = 'https://api.weixin.qq.com/sns/oauth2/access_token?appid='.config('wxpay.appid').'&secret='.config('wxpay.appsecret').'&code='.$code.'&grant_type=authorization_code';

$json = file_get_contents($url);

$arr = json_decode($json,true);

if(empty($arr['openid'])){

return make_return_json(500,'获取失败');

}

$token = $arr['access_token'];

$openid = $arr['openid'];

//拿到token后就可以获取用户基本信息了

$url = 'https://api.weixin.qq.com/sns/userinfo?access_token='.$token.'&openid='.$openid;

$json = file_get_contents($url);//获取微信用户基本信息

$arr = json_decode($json,true);

if(empty($arr['nickname'])){

return make_return_json(500,'获取信息失败');

}

$this->userData->weixin = $arr;

$this->userData->save();

return make_return_json(200,'success',$arr);

}

参考:https://www.cnblogs.com/txw1958/p/weixin76-user-info.html

参考:https://blog.csdn.net/shenlingsuifeng/article/details/17419985

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值