微信获取openid第一步
<?php
if(isset($_SESSION['user'])){
print_r($_SESSION['user']);
exit;
}
$APPID='sdfsdfsdfsdfsdf';
$REDIRECT_URI='http://fw.sxxmtlm.com/weixin/zl1.php';
//$scope='snsapi_base';
$state='123';
$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='.$state.'#wechat_redirect';
header("Location:".urldecode($url));
//echo(urldecode($url));
?>
微信获取openid第二步
<?php
//'http://fw.sxxmtlm.com/weixin/zl1.php
$appid = "sdfsdfsdf";
$secret = "sdfsdfsdffsd";
$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 = getJson($get_token_url);
$openid = $json_obj["openid"];
$access_token = $json_obj['access_token'];
//var_dump($json_obj);
//echo($openid);
//根据openid和access_token查询用户信息
$get_user_info_url = 'https://api.weixin.qq.com/sns/userinfo?access_token='.$access_token.'&openid='.$openid.'&lang=zh_CN';
$user_obj=getJson($get_user_info_url);
var_dump($user_obj);
function getJson($url){
$agent= 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.0.3705; .NET CLR 1.1.4322)';
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_USERAGENT, $agent);
$res=curl_exec($ch);
curl_close($ch);
return json_decode($res,true);
}
?>
注意要提供给微信agent信息,否则会获取到空