《PHP學(xué)習(xí):php版微信公眾平臺(tái)之微信網(wǎng)頁登陸授權(quán)示例》要點(diǎn):
本文介紹了PHP學(xué)習(xí):php版微信公眾平臺(tái)之微信網(wǎng)頁登陸授權(quán)示例,希望對(duì)您有用。如果有疑問,可以聯(lián)系我們。
PHP應(yīng)用本文實(shí)例講述了php版微信公眾平臺(tái)之微信網(wǎng)頁登陸授權(quán).分享給大家供大家參考,具體如下:
PHP應(yīng)用微信公眾平臺(tái)實(shí)現(xiàn)微信網(wǎng)頁登陸授權(quán)開發(fā)其實(shí)是非常的簡(jiǎn)單了,因?yàn)楣俜降膮⒖汲绦蛄?下面小編就看了一站長(zhǎng)根據(jù)官方參考做的一個(gè)網(wǎng)頁登陸授權(quán)例子,大家可看看.
PHP應(yīng)用文件1:index.php
PHP應(yīng)用
//換成自己的接口信息
$appid = 'XXXXX';
header('location:https://open.weixin.qq.com/connect/oauth2/authorize?appid='.$appid.'&redirect_uri=127.0.0.1/oauth.php&response_type=code&scope=snsapi_userinfo&state=123&connect_redirect=1#wechat_redirect');
參數(shù) | 是否必須 | 說明 |
appid | 是 | 公眾號(hào)的唯一標(biāo)識(shí) |
redirect_uri | 是 | 授權(quán)后重定向的回調(diào)鏈接地址,請(qǐng)使用urlencode對(duì)鏈接進(jìn)行處理 |
response_type | 是 | 返回類型,請(qǐng)?zhí)顚慶ode |
scope | 是 | 應(yīng)用授權(quán)作用域,snsapi_base(不彈出授權(quán)頁面,直接跳轉(zhuǎn),只能獲取用戶openid),snsapi_userinfo(彈出授權(quán)頁面,可通過openid拿到昵稱、性別、所在地.并且,即使在未關(guān)注的情況下,只要用戶授權(quán),也能獲取其信息) |
state | 否 | 重定向后會(huì)帶上state參數(shù),開發(fā)者可以填寫a-zA-Z0-9的參數(shù)值 |
#wechat_redirect | 是 | 無論直接打開還是做頁面302重定向時(shí)候,必須帶此參數(shù) |
PHP應(yīng)用文件二:oauth.php,代碼如下:
PHP應(yīng)用
<?php
$code = $_GET['code'];
$state = $_GET['state'];
//換成自己的接口信息
$appid = 'XXXXX';
$appsecret = 'XXXXX';
if (emptyempty($code)) $this->error('授權(quán)失敗');
$token_url = 'https://api.weixin.qq.com/sns/oauth2/access_token?appid='.$appid.'&secret='.$appsecret.'&code='.$code.'&grant_type=authorization_code';
$token = json_decode(file_get_contents($token_url));
if (isset($token->errcode)) {
echo '<h1>錯(cuò)誤:</h1>'.$token->errcode;
echo '<br/><h2>錯(cuò)誤信息:</h2>'.$token->errmsg;
exit;
}
$access_token_url = 'https://api.weixin.qq.com/sns/oauth2/refresh_token?appid='.$appid.'&grant_type=refresh_token&refresh_token='.$token->refresh_token;
//轉(zhuǎn)成對(duì)象
$access_token = json_decode(file_get_contents($access_token_url));
if (isset($access_token->errcode)) {
echo '<h1>錯(cuò)誤:</h1>'.$access_token->errcode;
echo '<br/><h2>錯(cuò)誤信息:</h2>'.$access_token->errmsg;
exit;
}
$user_info_url = 'https://api.weixin.qq.com/sns/userinfo?access_token='.$access_token->access_token.'&openid='.$access_token->openid.'&lang=zh_CN'; //開源軟件:phpfensi.com
//轉(zhuǎn)成對(duì)象
$user_info = json_decode(file_get_contents($user_info_url));
if (isset($user_info->errcode)) {
echo '<h1>錯(cuò)誤:</h1>'.$user_info->errcode;
echo '<br/><h2>錯(cuò)誤信息:</h2>'.$user_info->errmsg;
exit;
}
//打印用戶信息
echo '<pre>';
print_r($user_info);
echo '</pre>';
?>
參數(shù) | 描述 |
openid | 用戶的唯一標(biāo)識(shí) |
nickname | 用戶昵稱 |
sex | 用戶的性別,值為1時(shí)是男性,值為2時(shí)是女性,值為0時(shí)是未知 |
province | 用戶個(gè)人資料填寫的省份 |
city | 普通用戶個(gè)人資料填寫的城市 |
country | 國(guó)家,如中國(guó)為CN |
headimgurl | 用戶頭像,最后一個(gè)數(shù)值代表正方形頭像大小(有0、46、64、96、132數(shù)值可選,0代表640*640正方形頭像),用戶沒有頭像時(shí)該項(xiàng)為空. |
privilege | 用戶特權(quán)信息,json數(shù)組,如微信沃卡用戶為(chinaunicom) |
unionid | 只有在用戶將公眾號(hào)綁定到微信開放平臺(tái)帳號(hào)后,才會(huì)出現(xiàn)該字段.詳見:獲取用戶個(gè)人信息(UnionID機(jī)制) |
PHP應(yīng)用到此網(wǎng)頁登陸授權(quán)開發(fā)功能就作完了,如果想要獲取用戶基本信息我們需要看另一個(gè)例子,在官方有說明大家可自行搜索哦.
PHP應(yīng)用更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP微信開發(fā)技巧匯總》、《PHP編碼與轉(zhuǎn)碼操作技巧匯總》、《PHP網(wǎng)絡(luò)編程技巧總結(jié)》、《PHP基本語法入門教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
PHP應(yīng)用希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助.
轉(zhuǎn)載請(qǐng)注明本頁網(wǎng)址:
http://www.snjht.com/jiaocheng/3232.html