10 defined(
'JPATH_PLATFORM') or die;
31 public function read($id)
39 $query = $db->getQuery(
true)
40 ->select($db->quoteName(
'data'))
41 ->from($db->quoteName(
'#__session'))
42 ->where($db->quoteName(
'session_id') .
' = ' . $db->quote($id));
44 $db->setQuery($query);
46 $result = (string) $db->loadResult();
48 $result = str_replace(
'\0\0\0', chr(0) .
'*' . chr(0), $result);
68 public function write($id, $data)
73 $data = str_replace(chr(0) .
'*' . chr(0),
'\0\0\0', $data);
77 $query = $db->getQuery(
true)
78 ->update($db->quoteName(
'#__session'))
79 ->
set($db->quoteName(
'data') .
' = ' . $db->quote($data))
80 ->
set($db->quoteName(
'time') .
' = ' . $db->quote((
int) time()))
81 ->where($db->quoteName(
'session_id') .
' = ' . $db->quote($id));
84 $db->setQuery($query);
110 public function destroy($id)
117 $query = $db->getQuery(
true)
118 ->delete($db->quoteName(
'#__session'))
119 ->where($db->quoteName(
'session_id') .
' = ' . $db->quote($id));
122 $db->setQuery($query);
124 return (
boolean) $db->execute();
141 public function gc($lifetime = 1440)
147 $past = time() - $lifetime;
151 $query = $db->getQuery(
true)
152 ->delete($db->quoteName(
'#__session'))
153 ->where($db->quoteName(
'time') .
' < ' . $db->quote((
int) $past));
156 $db->setQuery($query);
158 return (
boolean) $db->execute();