author:咔咔
namespace datautil;
use Session;
/**
* 工具類
* 用戶緩存 facade代理 SC
*/
class SC
{
/**
* 用戶登錄的session key
*/
CONST LOGIN_MARK_SESSION_KEY = 'LOGIN_MARK_SESSION';
/**
* 權(quán)限信息
* @var string
*/
CONST USER_ROLE_SESSION = 'USER_ROLE_SESSION';
/**
* USER用戶信息
* @var string1
*/
CONST USER_INFO_SESSION = 'USER_INFO_SESSION';
/**
* 用戶是否是系統(tǒng)后臺用戶
*/
CONST USER_IS_SYSTEM_SESSION = 'USER_IS_SYSTEM_SESSION';
// /**
// * 是否設(shè)置用戶登入的有效時間
// * @var string
// */
// CONST CHECK_TIME_SESSION = 'CHECK_TIME_SESSION';
//
// private $checkTime = false;
//---------------------------設(shè)置和判斷用戶的是否登入
// 設(shè)置用戶登入token
public function setLogin($value)
{
Session::set(self::LOGIN_MARK_SESSION_KEY, password_hash($value, 1));
}
// 判斷用戶是否登入成功
public function getLogin()
{
return Session::get(self::LOGIN_MARK_SESSION_KEY);
}
//---------------------------設(shè)置用戶和獲取用戶的登入信息
// 設(shè)置用戶的信息
public function setUserInfo($value)
{
Session::set(self::USER_INFO_SESSION, $value);
}
// 獲取用戶的信息
public function getUserInfo($value = null)
{
$userInfo = Session::get(self::USER_INFO_SESSION);
// 這里做這個判斷是因為在驗證token時需要用戶的id
return ($value) ? $userInfo[$value] : $userInfo;
}
//--------------------------設(shè)置和獲取用戶的權(quán)限
// 設(shè)置用戶的角色
public function setUserRole($value)
{
Session::set(self::USER_ROLE_SESSION, $value);
}
// 獲取用戶的角色
public function getUserRole()
{
return Session::get(self::USER_ROLE_SESSION);
}
//--------------------------設(shè)置和獲取用戶是否是系統(tǒng)后臺用戶
/**
* 設(shè)置用戶是否為后臺系統(tǒng)用戶
* @access public
* @param boolean $value 用戶是后臺用戶為true,反正false
*/
public function setIsSystem($value)
{
Session::set(self::USER_IS_SYSTEM_SESSION,$value);
}
/**
* 獲取用戶是否是后臺用戶
* @access public
* @return array
*/
public function getIsSystem()
{
return Session::get(self::USER_IS_SYSTEM_SESSION);
}
//-------------------------用戶退出清空用戶緩存信息
// 退出登入
public function clear()
{
Session::del(self::USER_INFO_SESSION);
Session::del(self::USER_ROLE_SESSION);
Session::del(self::LOGIN_MARK_SESSION_KEY);
}
}
本文摘自 :https://blog.51cto.com/k