Heim >Backend-Entwicklung >Golang >So gelingt der lokale Start in den Tag in Go: Ist Truncate das richtige Tool?

So gelingt der lokale Start in den Tag in Go: Ist Truncate das richtige Tool?

Barbara Streisand
Barbara StreisandOriginal
2024-11-11 07:20:03720Durchsuche

How to Get the Local Start of the Day in Go: Is Truncate the Right Tool?

Lokalen Start des heutigen Tages abrufen

Das Ziel besteht darin, ein lokales Tagesanfangszeitobjekt zu erhalten, um sicherzustellen, dass die richtige Zeitzone enthalten ist.

Verwendung einer benutzerdefinierten Funktion

Die im Codeausschnitt vorgeschlagene erste Lösung rekonstruiert das Datum aus seinen Jahres-, Monats- und Tageskomponenten. Ein effizienterer Ansatz besteht jedoch darin, die vom Zeitpaket bereitgestellte Datumsfunktion zu nutzen.

func Bod(t time.Time) time.Time {
    return time.Date(t.Year(), t.Month(), t.Day(), 0, 0, 0, 0, t.Location())
}

Fehler der Truncate-Methode

Während die akzeptierte Antwort die Verwendung vorschlägt Wenn Sie die Truncate-Funktion verwenden, erfüllt sie unsere Anforderung nicht. Diese Funktion basiert auf der UTC-Zeit und geht fälschlicherweise von einem festen 24-Stunden-Tag aus, wobei mögliche in Chicago beobachtete Abweichungen außer Acht gelassen werden.

Das obige ist der detaillierte Inhalt vonSo gelingt der lokale Start in den Tag in Go: Ist Truncate das richtige Tool?. 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