Maison > Article > développement back-end > Comment analyser correctement les chaînes horaires dans Go avec les fuseaux horaires ?
Comprendre le comportement de time.Parse dans Go
Dans Go, la méthode time.Parse est utilisée pour convertir des chaînes en valeurs time.Time. Cependant, des problèmes de conversion de fuseau horaire peuvent survenir, entraînant des résultats inattendus.
Pour résoudre ces problèmes, il est crucial de définir une chaîne de format correcte. L'erreur renvoyée par time.Parse doit être gérée pour obtenir des informations sur le processus de conversion.
Chaîne de format corrigée
La chaîne de format fournie dans l'exemple de code, "2013 -05-13 18:41:34.848 -0700 PDT", est incorrect. Pour respecter la syntaxe de formatage de l'heure Go, le format correct doit être :
const longForm = "2006-01-02 15:04:05 -0700"
Exemple de code avec gestion des erreurs
En gérant l'erreur renvoyée par time.Parse , nous pouvons identifier toute conversion problèmes :
package main import ( "fmt" "log" "time" ) func main() { const longForm = "2006-01-02 15:04:05 -0700" t, err := time.Parse(longForm, "2013-05-13 18:41:34.848 -0700") if err != nil { log.Fatal(err) } fmt.Println(t) }
Sortie
Avec la chaîne de format corrigée et la gestion appropriée des erreurs, la sortie sera :
2013-05-13 01:41:34.848 +0000 UTC
Cette sortie reflète avec précision l'heure UTC, en tenant compte du fuseau horaire spécifié dans la chaîne de format. En comprenant le comportement de time.Parse et en suivant la syntaxe appropriée, les développeurs peuvent convertir efficacement les chaînes en valeurs temporelles dans Go.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!