redis 儲存session的執行個體

來源:互聯網
上載者:User
本文主要介紹了redis 替代php檔案儲存體session的執行個體的相關資料,希望通過本文能協助到大家,讓大家掌握redis 儲存session的方法,需要的朋友可以參考下,希望能協助到大家。

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 不會生效

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.