Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Membina objek masa.Masa dengan Offset Zon Masa Ditentukan?

Bagaimana untuk Membina objek masa.Masa dengan Offset Zon Masa Ditentukan?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-11 08:52:10716semak imbas

How to Construct a time.Time Object with a Specified Time Zone Offset?

Membina Masa.Masa dengan Offset Zon Masa

Dalam senario ini, anda telah berjaya menghuraikan tarikh daripada log Apache dan memperoleh maklumat seperti tahun, bulan, hari, jam, minit, saat dan zon waktu. Untuk membina masa.Masa yang termasuk mengimbangi zon waktu yang ditentukan, anda tidak boleh menggunakan masa.Tempatan atau masa.UTC.

Menggunakan masa.FixedZone()

Untuk menyelesaikan cabaran ini, anda boleh memanfaatkan masa.FixedZone(). Kaedah ini membolehkan anda mencipta masa.Lokasi dengan zon waktu tetap mengimbangi. Contohnya:

loc := time.FixedZone("myzone", -8*3600)
nativeDate := time.Date(2019, 2, 6, 0, 0, 0, 0, loc)
fmt.Println(nativeDate)

Kod ini membina masa. Lokasi bernama "myzone" dengan offset -8 jam, kemudian menggunakannya untuk mencipta masa. Masa dengan tarikh dan masa yang ditentukan.

Menghuraikan Offset Zon Masa

Jika ofset zon waktu disediakan sebagai rentetan, anda boleh gunakan masa.Parse() untuk menghuraikannya. Guna rentetan reka letak yang secara eksklusif mengandungi mengimbangi zon rujukan:

t, err := time.Parse("-0700", "-0800")
fmt.Println(t, err)

Kod ini menangkap imbangan zon waktu sebagai objek masa.

Penyelesaian Alternatif

Sebagai alternatif, anda boleh mengubah suai kod sedia ada anda untuk menggabungkan zon waktu yang diimbangi sebagai berikut:

t, err := time.Parse("-0700", "-0800")
if err != nil {
    panic(err)
}

nativeDate := time.Date(2019, 2, 6, 0, 0, 0, 0, t.Location())
fmt.Println(nativeDate)

Penyelesaian ini terlebih dahulu menghuraikan zon masa yang diimbangi sebagai masa. Objek masa, kemudian menggunakan kaedah Lokasi() untuk menetapkan zon waktu untuk masa itu. Masa yang anda bina.

Atas ialah kandungan terperinci Bagaimana untuk Membina objek masa.Masa dengan Offset Zon Masa Ditentukan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn