function getOpenid() { $openid = session('openid'); if ($openid == null) { $this->code = I('get.code', ''); $this->state = I('get.state', ''); //如果存在code,证明是二次访问。 if ($this->code != '' && $this->code != null && $this->code != S('code')) { S('code', $this->code, 300); //缓存300秒 $user = get_user_token($this->code); //获取有户token相关信息 if ($user['openid'] != null) { session('openid', $user['openid']); session('userToken', $user['access_token']); session('openidTime', time()); $key = $user['openid'] . "Token"; S($key, $this['userToken'], $user['expires_in']); } else { var_dump($user); throw_exception('获取用户信息失败'); } } else { goto_auth(); die; } } else { return $openid; } }
function get_user_info($code) { return get_user_token($code); }