public function clean() { $current_time = clock::get_stamp(); $sql = "DELETE FROM `{$this->table_name}` WHERE `expire_time` <= " . $current_time; mysqli_query($this->conn, $sql); if (kernel::is_debug()) { debug::save('session', $sql); } }
public static function set_cookie($name, $value, $seconds = 0, $path = '/', $domain = '', $secure = false, $http_only = false) { if ($seconds !== 0) { $seconds = clock::get_stamp() + $seconds; } $path = self::$request['prefix'] . $path; if ($domain === '') { $domain = config::get_module('visitor.cookie_domain', ''); } $cookie = ['name' => $name, 'value' => $value, 'expire' => $seconds, 'path' => $path, 'domain' => $domain, 'secure' => $secure, 'http_only' => $http_only]; self::$response['cookies'][] = $cookie; }
public static function create_session($role_name, $role_id, $sid, $login_seconds, array $role_vars) { $current_time = clock::get_stamp(); $last_active = $expire_time = $current_time; $login_seconds = (int) $login_seconds; $expire_time += $login_seconds === 0 ? self::$role_configs[$role_name]['default_alive_seconds'] : $login_seconds; $role_id = (int) $role_id; $role_secret = self::new_role_secret(); $session_store = self::get_session_store($role_name); $session_store->create($sid, $expire_time, $last_active, $role_id, $role_secret, $role_vars); return new session($role_name, $session_store, $sid, $expire_time, $last_active, $role_id, $role_secret, $role_vars); }