db = $db; } function open($savePath, $name) { return TRUE; } function close() { return TRUE; } function read($sessionId) { $sessionData = $this->db->getValue( 'SELECT data FROM userSession WHERE ssid = #', [$sessionId]); return isset($sessionData) ? $sessionData : ''; } function write($sessionId, $sessionData) { $this->db->query( 'INSERT INTO userSession SET ssid = #, data = #, lastUpdate = NOW() ON DUPLICATE KEY UPDATE data = VALUES(data), lastUpdate = VALUES(lastUpdate)', [$sessionId, $sessionData]); return TRUE; } function destroy($sessionId) { $this->db->query('DELETE FROM userSession WHERE ssid = #', [$sessionId]); return TRUE; } function gc($maxLifeTime) { $this->db->query('DELETE FROM userSession WHERE lastUpdate < TIMESTAMPADD(SECOND, -#, NOW())', [$maxLifeTime] ); return TRUE; } }