到这里https://open.weixin.qq.com,申请成为开发者,然后等着审核通过
通过了,创建网站应用,微信的回调域写个主域名就可以了,然后等着审核通过
通过了,得到正确的appid和appkey
利用composer安装 github地址:https://github.com/Yurunsoft/YurunOAuthLogin
composer require yurunsoft/yurun-oauth-login
写个首页,点击跳到login.php
<?php require dirname(__DIR__) . '/vendor/autoload.php'; $wxOAuth = new YurunOAuthLoginWeixinOAuth2('yourapikey', 'yourapisecret','callback_url'); $url = $wxOAuth->getAuthUrl(); $_SESSION['YURUN_WEIXIN_STATE'] = $wxOAuth->state; header('location:' . $url);
回调地址
<?php require dirname(__DIR__) . '/vendor/autoload.php'; $wxOAuth = new YurunOAuthLoginWeixinOAuth2('yourapikey', 'yourapisecret','callback_url'); var_dump( 'access_token:', $wxOAuth->getAccessToken($_SESSION['YURUN_WEIXIN_STATE']), '我也是access_token:', $wxOAuth->accessToken, '请求返回:', $wxOAuth->result ); var_dump( '用户资料:', $wxOAuth->getUserInfo(), 'openid:', $wxOAuth->openid );
会打印出登陆用户的信息,
拿到用户的nickname的时候,有很多带有emoji表情的名字,用了一个方法,过滤掉了(简单粗暴),但是存到数据库,在完美的显示出来,没有实现,太麻烦了
// 过滤掉emoji表情 private function filterEmoji($str) { $str = preg_replace_callback( '/./u', function (array $match) { return strlen($match[0]) >= 4 ? '' : $match[0]; }, $str); return $str; }