/**
* 获取微信用户信息
* @return string
*/
public function getBaseInfo(){
$appid=你的appid;
if(!isset($_GET['code'])){
$REDIRECT_URI='http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];//回调地址
$scope='snsapi_userinfo';
$url='https://open.weixin.qq.com/connect/oauth2/authorize?appid='.$appid.'&redirect_uri='.urlencode($REDIRECT_URI).'&response_type=code&scope='.$scope.'&state=wx'.'#wechat_redirect';
header("Location:".$url);
}else{
$secret = 你的appsecret;
$code = $_GET["code"];
$get_token_url = 'https://api.weixin.qq.com/sns/oauth2/access_token?appid='.$appid.'&secret='.$secret.'&code='.$code.'&grant_type=authorization_code';
$json_obj = self::getUrl($get_token_url);
//根据openid和access_token查询用户信息
$nickname = '';//用户昵称
if(isset($json_obj['access_token'])){
$access_token = $json_obj['access_token'];
$openid = $json_obj['openid'];
$get_user_info_url = 'https://api.weixin.qq.com/sns/userinfo?access_token='.$access_token.'&openid='.$openid.'&lang=zh_CN';
$user_obj = self::getUrl($get_user_info_url);
$nickname = $user_obj['nickname'];
}
return $nickname;
}
}
private function getUrl($url){
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_HEADER,0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
$res_res = curl_exec($ch);
curl_close($ch);
//解析json
return json_decode($res_res,true);
}
转载于:https://my.oschina.net/mafighting/blog/1809633
本文详细介绍了如何使用PHP从微信平台获取用户基本信息的过程,包括设置回调地址、通过code换取access_token及openid,最后调用API获取用户的昵称等信息。
587

被折叠的 条评论
为什么被折叠?



