Saya perlu menerima masa sebagai rentetan, menghuraikannya dan kemudian menjadikannya sebagai rentetan semula:
package main import ("fmt"; "time") func main() { const timelayout = "mon, jan 2, 2006 15:04 pm" sourcetime := "mon, apr 7, 2025 7:36 pm" mytime, err := time.parse(timelayout, sourcetime) if err != nil { panic(err) } fmt.printf("\t\tsourcetime = \"%s\"\n mytime.format(timelayout) = \"%s\"\n", sourcetime, mytime.format(timelayout)) }
Ini adalah hasil jangkaan saya:
sourcetime = "mon, apr 7, 2025 7:36 pm" mytime.format(timelayout) = "mon, apr 7, 2025 7:36 pm"
Tetapi saya menerima output pelik ini:
sourceTime = "Mon, Apr 7, 2025 7:36 PM" myTime.Format(timeLayout) = "Mon, Apr 7, 2025 19:36 PM"
Saya tidak mengubah sesuatu dalam pembolehubah, jadi mengapa saya menerima hasil yang berbeza untuk reka letak yang sama? Saya tidak sepatutnya menukar susun atur masa ini. Tetapi sekali lagi saya perlu menerima rentetan sumber sebagai hasilnya.
Reka letak masa anda menggunakan jam 24 jam (cth. 15:04 bukannya 3:04), jadi apabila anda memformatnya, anda mendapat 19 bukannya 7. Jika anda mahukan masa 12 jam maka susun atur masa anda hendaklah “2006 年 1 月 2 日星期一下午 3:04”
Atas ialah kandungan terperinci Gunakan masa.Parse untuk menghuraikan masa yang berbeza sebelum dan selepas. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!