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

yipeiwu_com6年前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获取数组元素中头一个数组元素值的实现方法

本文实例讲述了php获取数组元素中头一个数组元素值的实现方法。分享给大家供大家参考。具体如下: 在php的内置函数中,获取数组元素值的函数主要有 reset next current p...

php使用Jpgraph创建3D饼形图效果示例

php使用Jpgraph创建3D饼形图效果示例

本文实例讲述了php使用Jpgraph创建3D饼形图效果。分享给大家供大家参考,具体如下: 用Jpgraph类库制作统计图功能及其强大,不仅可以绘制平面图形,而且可以绘制具有3D效果的图...

thinkphp修改配置进入默认首页的方法

thinkphp文件夹下config 里面有个convention.php文件 里面有三个配置 'DEFAULT_MODULE' => 'Home', // 默认模块 'DEF...

解析php中static,const与define的使用区别

define部分:宏不仅可以用来代替常数值,还可以用来代替表达式,甚至是代码段。(宏的功能很强大,但也容易出错,所以其利弊大小颇有争议。)宏的语法为:#define 宏名称 宏值作为一种...

PHP类的特性实例分析

本文实例讲述了PHP类的特性。分享给大家供大家参考,具体如下: 对象向下传递特性 当一个对象调用一个实例方法,然后在该方法中又去静态调用另一个类的方法,则在被静态调用的方法中获得源方法中...