Menukar UTC kepada Zon Waktu Tertentu dalam Go dengan masa.Lokasi Muat
Apabila menukar waktu UTC kepada waktu tempatan tertentu, adalah penting untuk dipertimbangkan maklumat zon waktu untuk ketepatan. Percubaan untuk menambah perbezaan masa secara manual boleh mengakibatkan hasil yang salah.
Sebaliknya, pendekatan pilihan dalam Go ialah menggunakan masa.LoadLocation untuk mendapatkan maklumat zon waktu bagi lokasi yang diingini. Berikut ialah contoh kod Go yang diperbetulkan:
var countryTz = map[string]string{ "Hungary": "Europe/Budapest", "Egypt": "Africa/Cairo", } func timeIn(name string) time.Time { loc, err := time.LoadLocation(countryTz[name]) if err != nil { panic(err) } return time.Now().In(loc) } func main() { utc := time.Now().UTC().Format("15:04") hun := timeIn("Hungary").Format("15:04") eg := timeIn("Egypt").Format("15:04") fmt.Println(utc, hun, eg) }
Dalam contoh ini, peta (countryTz) digunakan untuk mengaitkan nama negara dengan rentetan zon waktu yang sepadan. Fungsi timeIn mengambil nama negara, memuatkan maklumat zon waktu menggunakan masa.LoadLocation dan mengembalikan masa semasa dalam zon waktu tertentu itu.
Fungsi utama kemudian mencetak waktu UTC dan waktu tempatan untuk Hungary dan Mesir menggunakan timeIn. Pendekatan ini memastikan bahawa perbezaan dalam zon waktu dan penjimatan siang dikendalikan dengan betul.
Atas ialah kandungan terperinci Bagaimana untuk Menukar Waktu UTC dengan Tepat kepada Zon Waktu Tertentu dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!