最新PHP微信授权登录第三方网站
public function index(){ $appid = 'APPID'; $appsecret = 'APPSECRET'; //第一步:用户同意授权,获取code $redirect_uri = urlencode('http://wxjs.luyugao.cn'.U('Index/one1')); $url = "https://open.weixin.qq.com/connect/oauth2/authorize"; $url.="?appid=$appid&redirect_uri=$redirect_uri&response_type=code&scope=snsapi_base&state=123#wechat_redirect"; $this->lyg($url); //snsapi_base snsapi_userinfo } public function one1(){ $appid = 'APPID'; $appsecret = 'APPSECRET'; //第一步返回的 得到了 Code $code = $_GET['code']; //第二步:通过code换取网页授权access_token $url ="https://api.weixin.qq.com/sns/oauth2/access_token"; $url.="?appid=$appid&secret=$appsecret&code=$code&grant_type=authorization_code"; $info = $this->getJson($url); //第三步:刷新access_token(如果需要) $refresh_token = $info['refresh_token']; $url = "https://api.weixin.qq.com/sns/oauth2/refresh_token"; $url.= "?appid=$appid&grant_type=refresh_token&refresh_token=$refresh_token"; $info = $this->getJson($url); //第四步:拉取用户信息(需scope为 snsapi_userinfo) $access_token = $info['access_token']; $openid = $info['openid']; echo $openid; $url = "https://api.weixin.qq.com/sns/userinfo"; $url.= "?access_token=$access_token&openid=$openid&lang=zh_CN"; $info = $this->getJson($url); //var_dump($info); /* openid,nickname,headimgurl */ } function lyg($url){ header("Location:$url"); //echo "<script type='text/javascript'>location.href='".$url."';</script>"; exit; } function getJson($url){ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $output = curl_exec($ch); curl_close($ch); return json_decode($output, true); }