示例#1
0
 static function gc($maxlifetime)
 {
     self::logdeb("garbage collection (maxlifetime = {$maxlifetime})");
     $epoch = common_sql_date(time() - $maxlifetime);
     $ids = array();
     $session = new Session();
     $session->whereAdd('modified < "' . $epoch . '"');
     $session->selectAdd();
     $session->selectAdd('id');
     $session->find();
     while ($session->fetch()) {
         $ids[] = $session->id;
     }
     $session->free();
     self::logdeb("Found " . count($ids) . " ids to delete.");
     foreach ($ids as $id) {
         self::logdeb("Destroying session '{$id}'.");
         self::destroy($id);
     }
 }
示例#2
0
 static function gc($maxlifetime)
 {
     self::logdeb("garbage collection (maxlifetime = {$maxlifetime})");
     $epoch = common_sql_date(time() - $maxlifetime);
     $ids = array();
     $session = new Session();
     $session->whereAdd('modified < "' . $epoch . '"');
     $session->selectAdd();
     $session->selectAdd('id');
     $limit = common_config('sessions', 'gc_limit');
     if ($limit > 0) {
         // On large sites, too many sessions to expire
         // at once will just result in failure.
         $session->limit($limit);
     }
     $session->find();
     while ($session->fetch()) {
         $ids[] = $session->id;
     }
     $session->free();
     self::logdeb("Found " . count($ids) . " ids to delete.");
     foreach ($ids as $id) {
         self::logdeb("Destroying session '{$id}'.");
         self::destroy($id);
     }
 }