我需要接收一個字串形式的時間,解析它,然後再次將其呈現為字串:
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)) }
這是我的預期輸出:
sourcetime = "mon, apr 7, 2025 7:36 pm" mytime.format(timelayout) = "mon, apr 7, 2025 7:36 pm"
但是我收到了這個奇怪的輸出:
sourceTime = "Mon, Apr 7, 2025 7:36 PM" myTime.Format(timeLayout) = "Mon, Apr 7, 2025 19:36 PM"
我沒有更改變數中的某些內容,那麼為什麼我會收到相同佈局的不同結果?我不應該改變這個時間佈局。但我需要再次接收來源字串作為結果。
您的時間佈局使用24 小時制(例如15:04 而不是3:04),因此當您格式化它時,您會得到19 而不是7。如果您想要 12 小時制,那麼您的時間佈局應為 “2006 年 1 月 2 日星期一下午 3:04”
以上是用time.Parse解析前後時間不同的詳細內容。更多資訊請關注PHP中文網其他相關文章!