在Controller掌握器目录中新增WechatController.class.php父掌握器文件、IndexController.class.php首页掌握器文件和AuthController.class.php微信网页授权用户注册掌握器文件。个中,在WechatController.class.php类文件新增checkUserWxLogin()方法,方便对是否已经网页授权登录进行判断,代码如下:
其余,在类初始化方法中根据OpenID进行数据的检索,代码如下:
AuthController.class.php文件中getUserInfo()方法的核心授权注册逻辑如下:

public function getUserInfo()
{
header('Content-type:text/html;charset=utf-8');
// 第一步:获取微信回调的code值
$code = I('code');
if($code)
{
import(\公众@.Lib.Wx.WxAuth\公众);
$wx = new \WxAuth(APP_ID ,APP_SECRET);
// 第二步:根据code获取access_token;
$this->access_data = $wx->getAccessTokenByCode($code);
// 第三步:拉取用户信息
$this->userinfo = $wx->getUserInfoByOpenID();
// 第四步:缓存openid到session中去
$this->cacheOpenID();
// 第五步:新增/更新用户信息
if($this->saveUserInfo())
{
// 第六步:页面重定向到指定地址
redirect(U('Index/index'));
}
}
else
{
$this->error('获取Code失落败!
,请稍后再试!
');
}
}
在IndexController.class.php掌握器文件中新增index()首页数据处理方法,实当代码如下: