Analyse de l'heure avec un fuseau horaire spécifique
Vous pouvez utiliser time.ParseTime() pour obtenir une structure temporelle à partir d'une chaîne. Il prend une chaîne de présentation comme argument, qui spécifie le format de la chaîne d'entrée. La chaîne de mise en page doit correspondre exactement au format de la chaîne d'entrée.
Si vous devez analyser une chaîne horaire qui inclut un fuseau horaire, vous pouvez utiliser time.ParseInLocation(). Cette fonction prend une chaîne de mise en page et un emplacement comme arguments. L'emplacement peut être une valeur time.Location ou une chaîne représentant un nom de fuseau horaire.
Par exemple, le code suivant analyse une chaîne d'heure qui inclut un fuseau horaire :
<code class="go">import ( "fmt" "time" ) func main() { const layout = "2006-01-02 15:04" const timeStr = "2012-07-09 05:02:00 +0000 CEST" t, err := time.ParseInLocation(layout, timeStr, time.Local) if err != nil { fmt.Println(err) return } fmt.Println(t) }</code>
Ceci Le code affichera le résultat suivant :
2012-07-09 05:02:00 +0000 CEST
La fonction time.ParseInLocation() analysera la chaîne de temps en fonction de la chaîne de mise en page et de l'emplacement spécifié. Dans ce cas, la chaîne de mise en page est "2006-01-02 15:04" et l'emplacement est "CEST". La fonction time.ParseInLocation() renverra une valeur time.Time qui représente l'heure analysée.
Si vous ne spécifiez pas d'emplacement, la fonction time.ParseInLocation() utilisera le fuseau horaire local. Cela signifie que l'heure analysée sera convertie dans le fuseau horaire local.
Vous pouvez éviter cela en créant une valeur time.Time avec l'heure et le fuseau horaire corrects :
<code class="go">import ( "fmt" "time" ) func main() { const layout = "2006-01-02 15:04" const timeStr = "2012-07-09 05:02:00" const timeZone = "CEST" pz, err := time.LoadLocation(timeZone) if err != nil { fmt.Println(err) return } t, err := time.Parse(layout, timeStr) if err != nil { fmt.Println(err) return } T := t.In(pz) fmt.Println(T) }</code>
Ceci Le code imprimera le résultat suivant :
2012-07-09 05:02:00 +0200 CEST
La sortie de ce code affiche l'heure dans le fuseau horaire correct.
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!