當(dāng)前位置:首頁 > IT技術(shù) > Web編程 > 正文

【PHP工具類】SESSION
2021-09-29 14:46:56

author:咔咔

<?php

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)后臺(tái)用戶
*/
CONST USER_IS_SYSTEM_SESSION = 'USER_IS_SYSTEM_SESSION';
// /**
// * 是否設(shè)置用戶登入的有效時(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);
// 這里做這個(gè)判斷是因?yàn)樵隍?yàn)證token時(shí)需要用戶的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)后臺(tái)用戶

/**
* 設(shè)置用戶是否為后臺(tái)系統(tǒng)用戶
* @access public
* @param boolean $value 用戶是后臺(tái)用戶為true,反正false
*/
public function setIsSystem($value)
{
Session::set(self::USER_IS_SYSTEM_SESSION,$value);
}

/**
* 獲取用戶是否是后臺(tái)用戶
* @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

開通會(huì)員,享受整站包年服務(wù)立即開通 >