Heim >Backend-Entwicklung >Golang >Wie kann ich eine Liste der verwendbaren Zeitzonen für Go's time.Format() erhalten?

Wie kann ich eine Liste der verwendbaren Zeitzonen für Go's time.Format() erhalten?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-01 09:43:10670Durchsuche

How Can I Get a List of Usable Time Zones for Go's time.Format()?

Erhalten einer Liste verwendbarer Zeitzonen für Go's time.Format()

Um Benutzern eine bequeme Möglichkeit zu bieten, Zeitzonen in Ihrem Land auszuwählen Für Anwendungen müssen Sie möglicherweise ein Dropdown-Menü mit einer Liste gültiger Zeitzonen füllen. Diese Liste kann mit einer einfachen Methode in Go erstellt werden.

Lösung:

Um eine umfassende Liste häufig unterstützter Zeitzonen zu erhalten, die mit der Uhrzeit verwendet werden können. Mit der Format()-Funktion können Sie Folgendes verwenden Code:

package main

import (
    "fmt"
    "os"
    "strings"
)

var zoneDirs = []string{
    // Update path according to your OS
    "/usr/share/zoneinfo/",
    "/usr/share/lib/zoneinfo/",
    "/usr/lib/locale/TZ/",
}

var zoneDir string

func main() {
    for _, zoneDir = range zoneDirs {
        ReadFile("")
    }
}

func ReadFile(path string) {
    files, _ := os.ReadDir(zoneDir + path)
    for _, f := range files {
        if f.Name() != strings.ToUpper(f.Name()[:1]) + f.Name()[1:] {
            continue
        }
        if f.IsDir() {
            ReadFile(path + "/" + f.Name())
        } else {
            fmt.Println((path + "/" + f.Name())[1:])
        }
    }
}

Erklärung:

  • Dieser Code durchläuft potenzielle Zeitzonenverzeichnisse, um gültige Zeitzonen zu finden.
  • Es lautet den Inhalt des Verzeichnisses und ignoriert Einträge mit gemischter Groß- und Kleinschreibung.
  • Wenn es sich bei einem Eintrag um ein Verzeichnis handelt, ruft es rekursiv die ReadFile auf Funktion, um die Suche fortzusetzen.
  • Zeitzonennamen werden dann ohne den führenden Schrägstrich gedruckt.

Ausgabe:

Das Ausführen des Codes führt zu eine Liste mit Zeitzonennamen, wie zum Beispiel:

Africa/Abidjan
Africa/Accra
Africa/Addis_Ababa
Africa/Algiers
Africa/Asmara
...

Sie können diese Liste in Ihre HTML-Vorlage integrieren, um eine benutzerfreundliche Zeitzone zu erstellen Auswahlfunktion.

Das obige ist der detaillierte Inhalt vonWie kann ich eine Liste der verwendbaren Zeitzonen für Go's time.Format() erhalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn