主頁(yè) > 知識(shí)庫(kù) > redis 替代php文件存儲(chǔ)session的實(shí)例

redis 替代php文件存儲(chǔ)session的實(shí)例

熱門(mén)標(biāo)簽:小紅書(shū)怎么地圖標(biāo)注店 最簡(jiǎn)單的百度地圖標(biāo)注 地圖標(biāo)注費(fèi)用 地圖標(biāo)注如何即時(shí)生效 玄武湖地圖標(biāo)注 竹間科技AI電銷(xiāo)機(jī)器人 太原營(yíng)銷(xiāo)外呼系統(tǒng) 百度商家地圖標(biāo)注怎么做 西藏教育智能外呼系統(tǒng)價(jià)格

redis 替代php文件存儲(chǔ)session的實(shí)例

查看實(shí)例之前請(qǐng)先了解   PHP session_set_save_handler函數(shù)的用法

定義個(gè)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();
  }
}

創(chuàng)建一個(gè)session_set.php 代碼如下

include("SessionManager.php");
new SessionManager();
$_SESSION['user_name']="xxdcsnd@sina.com";

創(chuàng)建一個(gè)session_set.php 代碼如下

include("SessionManager.php");
new SessionManager();
echo $_SESSION['user_name'];

測(cè)試輸出 結(jié)果  xxdcsnd@sina.com

注意 :php.ini session.save-hadler 設(shè)置為 user ,否則session_set_save_handler 不會(huì)生效

如有疑問(wèn)請(qǐng)留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

您可能感興趣的文章:
  • PHP使用Redis替代文件存儲(chǔ)Session的方法
  • php Session存儲(chǔ)到Redis的方法
  • php實(shí)現(xiàn)Session存儲(chǔ)到Redis
  • php+redis實(shí)現(xiàn)多臺(tái)服務(wù)器內(nèi)網(wǎng)存儲(chǔ)session并讀取示例
  • php基于redis處理session的方法
  • 淺析PHP分布式中Redis實(shí)現(xiàn)Session的方法
  • PHP實(shí)現(xiàn)Session入庫(kù)/存入redis的方法
  • PHP中如何使用Redis接管文件存儲(chǔ)Session詳解

標(biāo)簽:澳門(mén) 廣東 揚(yáng)州 贛州 唐山 景德鎮(zhèn) 林芝 香港

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《redis 替代php文件存儲(chǔ)session的實(shí)例》,本文關(guān)鍵詞  redis,替代,php,文件,存儲(chǔ),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《redis 替代php文件存儲(chǔ)session的實(shí)例》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于redis 替代php文件存儲(chǔ)session的實(shí)例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章