使用Redis管理和保存Session 1. [文件] SessionManager.php~1KB 下载 (2) ?php /*** SessionManager*/class SessionManager{private $redis;private $sessionSavePath;private $sessionName;private $sessionExpireTime = 30;function __construct
          1. [文件] SessionManager.php ~ 1KB 下载(2)
<?php 
	/**
	* SessionManager
	*/
	class SessionManager
	{
		private $redis;
		private $sessionSavePath;
		private $sessionName;
		private $sessionExpireTime = 30;
		function __construct()
		{
			$this->redis = new Predis\client();
			$this->redis->connect('127.0.0.1', 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);
			if ($value) {
				return $value;
			}else{
				return '';
			}
		}
		public function write($id, $data)
		{
			var_dump($id);
			if ($this->redis->set($id, $data)) {
				$this->redis->expire($id, $this->sessionExpireTime);
				return true;
			}
			return false;
		}
		public function destroy($id)
		{
			if ($this->redis->delete($id)) {
				return true;
			}
			return false;
		}
		public function gc($maxlifetime)
		{
			return true;
		}
		public function __destruct()
		{
			session_write_close();
		}
	}
 ?> 
2. [文件] session_set.php ~ 241B 下载(2)
<?php 
	require '../Predis/src/Autoloader.php';
	Predis\Autoloader::register();
	include("SessionManager.php");
	new SessionManager();
	$_SESSION['username'] = "xugang";
	echo "<a href = './session_get.php'>session</a>";
 ?>
 
3. [文件] session_get.php ~ 177B 下载(2)
<?php 
	require '../Predis/src/Autoloader.php';
	Predis\Autoloader::register();
	include("SessionManager.php");
	new SessionManager();
	echo $_SESSION['username'];
 ?>
        
        