Maison >développement back-end >Golang >Comment puis-je définir de manière fiable le fuseau horaire mondial dans une application Go ?
Définition du fuseau horaire global dans Go
Dans Go, le fuseau horaire est généralement défini via la variable d'environnement TZ. Lors de la définition de cette variable dans les conteneurs Docker ou via Bash, une méthode alternative consiste à utiliser la fonction os.SetEnv dans votre application Go. Cependant, cette approche peut échouer si d'autres packages ont déjà accédé au package time.
Pour garantir que os.SetEnv définit le fuseau horaire avant qu'un autre package n'accède à l'heure, vous pouvez utiliser la solution suivante :
Créer un package pour l'initialisation du fuseau horaire :
Créez un package distinct nommé tzinit avec le code suivant :
package tzinit import ( "os" ) func init() { os.Setenv("TZ", "Africa/Cairo") }
Importez tzinit en premier dans le package principal :
Dans votre package principal, importez le package tzinit en tant que la première déclaration d'importation :
package main import _ "path/to/tzinit" // Other imports
En important tzinit d'abord, vous vous assurez qu'il définit le fuseau horaire avant qu'un autre package n'accède au package horaire.
Remarque :
Lors de la définition de la variable d'environnement TZ à partir de l'application Go fonctionne dans la plupart des cas, il est recommandé de définir cette variable avant de lancer l'application Go pour un comportement cohérent et déterministe.
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!