getUserByUsername($username); if(!$user || !password_verify($password, $user->getPassword())) { return false; } $_SESSION['user'] = [ 'id' => $user->getId(), 'username' => $user->getUsername() ]; return true; } /** * Loggt den aktuellen Benutzer aus und zerstört die Session. * * @return void */ public static function logout(): void { session_unset(); session_destroy(); } /** * Prüft, ob ein Benutzer eingeloggt ist. * * @return bool True, wenn ein Benutzer eingeloggt ist, sonst false. */ public static function isLoggedIn(): bool { return isset($_SESSION['user']); } /** * Gibt die aktuellen Benutzerdaten aus der Session zurück. * * @return array|null Benutzerdaten oder null, falls nicht eingeloggt. */ public static function getCurrentUser(): ?array { return $_SESSION['user'] ?? null; } }