Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk menukar masa dalam golang
Golang ialah bahasa pengaturcaraan baru muncul yang menawarkan prestasi dan fleksibiliti yang sangat baik dari segi masa pemprosesan. Semasa pembangunan, kita selalunya perlu menukar masa kepada format yang berbeza, seperti cap waktu Unix, rentetan atau tarikh dan masa dalam zon waktu tertentu. Dalam artikel ini, kami akan menumpukan pada penukaran masa di Golang.
Pakej masa digunakan di Golang untuk melaksanakan operasi masa. Cap waktu Unix ialah bilangan saat sejak 1 Januari 1970 00:00:00 UTC. Kita boleh menggunakan fungsi time.Unix untuk menukar cap waktu Unix kepada masa. Jenis masa (struktur yang mewakili masa dan tarikh dalam Golang).
Sebagai contoh, untuk menukar cap waktu Unix 1562725815 kepada objek masa, anda boleh melakukan perkara berikut:
timestamp := int64(1562725815) t := time.Unix(timestamp, 0) fmt.Println(t) // 输出:2019-07-10 02:30:15 +0000 UTC
Dalam kod di atas, kami mula-mula mentakrifkan cap waktu Unix dan Ia diluluskan sebagai parameter kepada masa.Fungsi Unix. Fungsi mengembalikan objek masa. Masa, dan kita boleh menggunakan fungsi Println untuk mencetak nilainya.
Kita boleh menggunakan kaedah masa Unix.Jenis masa untuk menukar masa kepada cap waktu Unix. Kaedah Unix mengembalikan saat dan nanosaat, kita boleh mengabaikan nanosaat secara pilihan.
Sebagai contoh, untuk menukar objek masa t kepada cap waktu Unix, anda boleh melakukan perkara berikut:
timestamp := t.Unix() fmt.Println(timestamp) // 输出:1562725815
Dalam kod di atas, kami memanggil kaedah t.Unix() kepada dapatkan masa Cap masa Unix objek t.
Untuk menukar masa kepada rentetan, kita boleh menggunakan kaedah Format masa itu. Jenis masa dan rentetan dalam format yang ditentukan. Aksara format masa dalam Golang adalah berdasarkan standard bahasa ANSI C.
Contohnya, untuk menukar objek masa t kepada rentetan dalam format "2006-01-02 15:04:05", anda boleh melakukan perkara berikut:
layout := "2006-01-02 15:04:05" str := t.Format(layout) fmt.Println(str) // 输出:2019-07-10 02:30:15
Dalam di atas Dalam kod, kita mula-mula menentukan susun atur rentetan format, dan kemudian hantarkannya sebagai parameter kepada kaedah t.Format. Kaedah ini mengembalikan rentetan, yang dijana mengikut format susun atur.
Kita boleh menggunakan fungsi masa.Parse untuk menghuraikan rentetan menjadi objek masa. Untuk menggunakan fungsi ini kita perlu menyediakan rentetan format dan rentetan untuk menghuraikan.
Sebagai contoh, untuk menghuraikan rentetan "2019-07-10 02:30:15" dalam format "2006-01-02 15:04:05" ke dalam objek masa, anda boleh melakukan perkara berikut operasi:
layout := "2006-01-02 15:04:05" str := "2019-07-10 02:30:15" t, err := time.Parse(layout, str) if err != nil { panic(err) } fmt.Println(t) // 输出:2019-07-10 02:30:15 +0000 UTC
Dalam kod di atas, kami mula-mula mentakrifkan susun atur rentetan format dan str rentetan untuk dihuraikan, kemudian hantarnya sebagai parameter kepada masa.Fungsi Parse. Fungsi mengembalikan masa. Objek masa dan ralat. Jika penghuraian gagal, kami akan menerima ralat.
Apabila melakukan penukaran masa, kadangkala kita perlu mempertimbangkan perbezaan zon waktu. Terdapat fungsi LoadLocation dalam pakej masa di Golang yang boleh membantu kami mengendalikan penukaran zon waktu.
Sebagai contoh, untuk menukar waktu tempatan kepada waktu UTC, anda boleh melakukan perkara berikut:
layout := "2006-01-02 15:04:05" str := "2019-07-10 02:30:15" local, err := time.ParseInLocation(layout, str, time.Local) if err != nil { panic(err) } utc := local.In(time.UTC) fmt.Println(utc) // 输出:2019-07-10 02:30:15 +0000 UTC
Dalam kod di atas, kami mula-mula menetapkan zon waktu kepada zon waktu tempatan dan kemudian gunakan masa. Kaedah ParseInLocation menghuraikan rentetan ke dalam objek masa. Masa yang dihuraikan ialah objek tempatan. Kemudian kami menggunakan kaedah local.In(time.UTC) untuk menukar objek tempatan kepada masa UTC.
Ringkasan
Penukaran masa Golang sangat fleksibel. Kami boleh menukar objek masa kepada cap waktu Unix, rentetan atau tarikh dan masa dalam zon waktu yang ditentukan, dan kami juga boleh menukar jenis data ini kepada objek masa. Pastikan anda mengetahui perbezaan zon waktu semasa mengendalikan masa, jika tidak, anda mungkin mendapat hasil yang tidak tepat. Dengan menggunakan keupayaan penukaran masa Golang dengan betul, kami boleh membina aplikasi yang cekap dan boleh dipercayai dengan lebih mudah.
Atas ialah kandungan terperinci Bagaimana untuk menukar masa dalam golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!