SessionHandler::gc
Aufräumen alte Sitzungen
SessionHandler :: GC () ist eine Funktion für die Müllsammlung, es ist eine integrierte Funktion für PHP. Sein Ziel ist es, abgelaufene Sitzungsdaten zu löschen.
Verwendung:
bool SessionHandler::gc(int $maxlifetime): bool
Parameter:
Rückgabewert:
Beispiel:
class MySessionHandler extends SessionHandler { public function gc($maxlifetime) { // 进行垃圾回收操作,删除过期的会话数据// 在这里可以根据需要自定义垃圾回收的逻辑// 例如,可以删除一周前的会话数据$expiredTime = time() - $maxlifetime; $query = "DELETE FROM sessions WHERE last_accessed < $expiredTime"; // 执行删除操作的代码// ... return true; // 垃圾回收成功} } // 设置自定义的会话处理器$handler = new MySessionHandler(); session_set_save_handler($handler, true); // 启动会话session_start(); // 执行其他操作... // 会话结束时,PHP会自动调用gc()函数进行垃圾回收
In diesem Beispiel haben wir eine benutzerdefinierte Sitzungsprozessorklasse namens MySessionHandler
erstellt und gc()
-Methode überschreiben. In gc()
-Methode verwenden wir SQL -Anweisungen, um abgelaufene Sitzungsdaten vor einer Woche zu löschen. Anschließend setzen wir den benutzerdefinierten Sitzungsprozessor auf den Prozessor der aktuellen Sitzung über session_set_save_handler()
. Schließlich ruft PHP am Ende der Sitzung automatisch die gc()
-Funktion für Müllabfuhrvorgänge auf.