<?php
session_start();
class SessionSaveHandler
{
public function __construct()
{
session_set_save_handler(
array($this, 'open'),
array($this, 'close'),
array($this, 'read'),
array($this, 'write'),
array($this, 'destroy'),
array($this, 'gc')
);
register_shutdown_function('session_write_close');
}
public function open($savePath, $sessionName)
{
return true;
}
public function close()
{
return true;
}
public function read($id)
{
global $memcachedConnection;
return $memcachedConnection->get($id);
}
public function write($id, $data)
{
global $memcachedConnection;
$memcachedConnection->set($id, $data, 3600);
}
public function destroy($id)
{
global $memcachedConnection;
$memcachedConnection->delete($id);
return true;
}
public function gc($maxlifetime)
{
return true;
}
}
$sessionHandler = new SessionSaveHandler();