header("Content-Type: text/html;charset=utf-8");
function getOpenid($appid, $appsecret, $appurl){
$SERVER_NAME = $_SERVER['SERVER_NAME'];
$REQUEST_URI = $_SERVER['REQUEST_URI'];
$redirect_uri = urlencode($appurl);//这里用你的网页授权回调地址替换一下
$code = $_GET['code'];
if (!$code) {
// 网页授权当scope=snsapi_userinfo时才会提示是否授权应用
$url="https://open.weixin.qq.com/connect/oauth2/authorize?appid=".$appid."&redirect_uri=".$redirect_uri."&response_type=code&scope=snsapi_userinfo&state=1#wechat_redirect";
header("location:".$url);
} else {
// 获取openid
$url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=".$appid."&secret=".$appsecret."&code=".$code."&grant_type=authorization_code";
$row = http_curl($url);
return ($row['openid']);
}
}
function http_curl($url){
//用curl传参
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
//关闭ssl验证
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch,CURLOPT_HEADER, 0);
$output = curl_exec($ch);
curl_close($ch);
return json_decode($output, true);
}
使用方法:
require_once('class/bc_openid.php');
$appid = "wx3ad8dea90a92903a";
$secret = "bbac22ef238492cc9cccba8b88c66d40";
$appurl = "http://php.bcrm.cn/baicewechat/bc5444.php";
$openid = getOpenid($appid, $secret, $appurl);