db = new Redis(); if ( ! $connect || ! $db ) return; $this->connect($connect, $db); } public function connect($connect, $db){ try { $this->db->connect($connect); } catch (Exception $e){ $this->error = $e; return false; } try { $this->db->select($db); } catch (Exception $e){ $this->error = $e; return false; } try { $this->db->ping(); } catch (Exception $e){ $this->error = $e; return false; } return true; } public function expire($key, $ttl){ try { $this->db->setTimeout($key, $ttl); } catch (Exception $e){ $this->error = $e; return false; } } public function set($key, $value, $ttl = null){ if ( is_null($ttl) ) return $this->db->set($key, $value); else return $this->db->set($key, $value, (int)$ttl); } public function get($key){ return $this->db->get($key); } public function exists($key){ return $this->db->exists($key); } public function __destruct(){ try { $this->db->close(); } catch (Exception $e){ return false; } } }