php 微信开发获取用户信息如何实现

5年以前  |  阅读数:508 次  |  编程语言:PHP 

php 微信开发获取用户信息

获取用户信息的大致算法是

用户授权登录第三方网站,

重点:scope参数:
snsapi_basic 静默登录,不需要用户授权,只能获取到openid;
snsapi_userinfo ,需要用户点击授权,能获取到openid和所有用户信息;

第一步:先获取用户的code值;
第二步:根据code值去获取access_token,每次请求的值都不一样,如果没有使用,每五分钟更新一次;
第三步:根据access_token获取用户信息;

1.获取code代码实现:

getcode.php


    if(isset($_SESSION['user'])){
                  print_r($_SESSION['user']);
                  exit;
                }

    $appid='wx1d7c6fcd6131143b3';

                $redirect_url="http://www.antfortune.vip/callback.php";
                $scope='snsapi_userinfo';//获取的方式;


                $url='https://open.weixin.qq.com/connect/oauth2/authorize?appid='.$appid.'&redirect;_uri='.urlencode($redirect_url).'&response;_type=code&scope;='.$scope.'&state;=123#wechat_redirect';


    header("Location:".$url);

2、根据code获取access_token和openid


    getOpenid.php



    <?php
    //获取用户openid
    $appid="your appid";
    $appsecret="your appsecret";
    $code=$_GET['code'];



    function getOpenID($appid,$appsecret,$code){
    $url="https://api.weixin.qq.com/sns/oauth2/access_token?appid=".$appid."&secret;=". 
    $appsecret."&code;=".$code."&grant;_type=authorization_code";

    $weixin=file_get_contents($url);//通过code换取网页授权access_token
    $jsondecode=json_decode($weixin); //对JSON格式的字符串进行编码
    $array = get_object_vars($jsondecode);//转换成数组
    $openid = $array['openid'];//输出openid
    return $openid;
    }

    echo getOpenID($appid,$appsecret,$code);


感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例