redis 替代php文件存儲session的實例

創新互聯公司服務項目包括宜州網站建設、宜州網站制作、宜州網頁制作以及宜州網絡營銷策劃等。多年來,我們專注于互聯網行業,利用自身積累的技術優勢、行業經驗、深度合作伙伴關系等,向廣大中小型企業、政府機構等提供互聯網行業的解決方案,宜州網站推廣取得了明顯的社會效益與經濟效益。目前,我們服務的客戶以成都為中心已經輻射到宜州省份的部分城市,未來相信會繼續擴大服務區域并繼續獲得客戶的支持與信任!
查看實例之前請先了解 PHP session_set_save_handler函數的用法
定義個SessionManager 類
class SessionManager {
private $redis;
public function __construct(){
$this->redis = new Redis();
$this->redis->connect('192.168.0.102', 6379);
$retval =session_set_save_handler(
array($this,"open"),
array($this,"close"),
array($this,"read"),
array($this,"write"),
array($this,"destroy"),
array($this,"gc")
);
session_start();
}
public function open($path,$name){
return true;
}
public function close(){
return true;
}
public function read($id){
$session_value = $this->redis->get($id);
if($session_value){
return $session_value;
}else{
return "";
}
}
public function write($id,$data){
if($this->redis->set($id,$data)){
return true;
}else{
return false;
}
}
public function destroy($id){
if($this->redis->delete($id)){
return true;
}else{
return false;
}
}
public function gc($maxlifetime){
return true;
}
public function __destruct(){
session_write_close();
}
}
創建一個session_set.php 代碼如下
include("SessionManager.php");
new SessionManager();
$_SESSION['user_name']="xxdcsnd@sina.com";
創建一個session_set.php 代碼如下
include("SessionManager.php");
new SessionManager();
echo $_SESSION['user_name'];測試輸出 結果 xxdcsnd@sina.com
注意:php.ini session.save-hadler 設置為 user ,否則session_set_save_handler 不會生效
如有疑問請留言或者到本站社區交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
新聞名稱:redis替代php文件存儲session的實例
網頁URL:http://www.yijiale78.com/article8/pdseip.html
成都網站建設公司_創新互聯,為您提供網頁設計公司、搜索引擎優化、商城網站、手機網站建設、網站維護、靜態網站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯