<?php
class SessionManager {
private $redis;
private $sessionSavePath;
private $sessionName;
private $sessionExpireTime = 30;
public function __construct() {
$this->redis = new redis();
$this->redis->connect('10.204.79.197', 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($patn, $name) {
return true;
}
public function close() {
return true;
}
public function read($id) {
$value = $this->redis->get($id);
return $value?$value:'';
}
public function write($id, $data) {
if($this->redis->set($id,$data)) {
$this->redis->expire($id, $this->sessionExpireTime);
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();
}
}
?>
<?php
include "test_c.php";
new SessionManager();
$_SESSION['username'] = 'ttt';
$_SESSION['xxxxx'] = 'rrrr';
echo 'set sucess';
?>
<?php
include "test_c.php";
new SessionManager();
echo $_SESSION['xxxxx'];
?>