Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- class MySqliSessionHandler implements SessionHandlerInterface
- {
- private $mysqli;
- private $sessionName;
- /**
- * MySessionHandler constructor.
- * @param $mysqli
- */
- public function __construct(mysqli $mysqli)
- {
- $this->mysqli = $mysqli;
- }
- public function open($savePath, $sessionName)
- {
- $this->sessionName = $sessionName;
- }
- public function close()
- {
- return true;
- }
- public function read($id)
- {
- $sql =sprintf("SELECT value FROM session WHERE id = '%s'",$this->mysqli->escape_string($id));
- $statement = $this->mysqli->query($sql);
- return $statement->fetch_assoc()['value'];
- }
- public function write($id, $data)
- {
- $sql =sprintf("INSERT INTO session (id,value,created) VALUES('%s','%s',NOW())",$this->mysqli->escape_string($id),$this->mysqli->escape_string($data));
- $this->mysqli->query($sql);
- return $this->mysqli->affected_rows > 0;
- }
- public function destroy($id)
- {
- $sql =sprintf("DELETE FROM session WHERE id='%s'",$this->mysqli->escape_string($id));
- $this->mysqli->query($sql);
- return $this->mysqli->affected_rows > 0;
- }
- public function gc($maxlifetime)
- {
- $sql ="DELETE FROM session WHERE created +".$maxlifetime." < NOW()";
- $this->mysqli->query($sql);
- return $this->mysqli->affected_rows > 0;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement