Exemplo n.º 1
0
 public function testSignUp($name, $password, $email)
 {
     if (User::findFirst("name = {$name} OR email = {$email}")) {
         return false;
     }
     //制造SALT值
     $salt = substr(str_shuffle('abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'), 0, 4);
     $user = new User();
     $user->name = $name;
     $user->email = $email;
     $user->password = $password;
     $user->salt = $salt;
     $user->reg_time = $user->last_sign_time = time();
     $user->last_sign_ip = Func::getClientIp(1);
     return $user->create() === true ? true : false;
 }
Exemplo n.º 2
0
 public function refreshUser()
 {
     $user = $this->getSession()->get($this->sessionKey);
     if (!$user) {
         return null;
     } else {
         // 从数据库中读取用户信息
         $user = User::findFirst($user->User_id);
         $roles = $this->getRoles($user);
         // 重新生成session_id
         session_regenerate_id();
         // 保存用户信息到session
         $this->getSession()->set($this->sessionKey, $user);
         // 保存用户角色权限到session
         if ($this->sessionRoles) {
             $this->getSession()->set($this->sessionRoles, $roles);
         }
         return $user;
     }
 }