關於 Golang 中毫秒轉時間,我們可以先了解 Go 的時間類型,也就是 time.Time
。它的定義如下:
type Time struct { wall uint64 ext int64 loc *Location }
其中wall
欄位表示自Unix 紀元開始的奈秒數,ext
表示奈秒內的偏移量, loc
表示時區資訊。
那麼,針對毫秒轉時間,我們需要先將毫秒數轉換為 time.Time
類型,然後再根據自己的需求格式化輸出。
實作方法如下:
package main import ( "fmt" "time" ) func main() { // 假设我们有这么一个毫秒时间戳 timestamp := int64(1591215345000) // 将毫秒数转换为 time.Time 类型 t := time.Unix(timestamp/1000, (timestamp%1000)*int64(time.Millisecond)) // 格式化输出 fmt.Println(t.Format("2006-01-02 15:04:05")) }
在這個程式碼片段中,我們使用了time.Unix
函數將毫秒數轉換為time.Time
類型。這個函數的第一個參數表示 Unix 紀元開始到此刻的秒數,第二個參數表示奈秒內的偏移量,具體計算方法為毫秒數乘以 1,000,000。
然後,我們使用 time.Time
類型的 Format
方法將時間格式化輸出。請注意,這裡格式化字串中的時間格式必須符合 Go 的時間格式化規則,與其他語言的時間格式化規則有所區別。
總的來說,在Golang 中毫秒轉時間比較簡單,只需要使用time.Unix
函數將毫秒數轉換為time.Time
類型,然後再按照需求格式化輸出即可。
以上是golang毫秒轉時間的詳細內容。更多資訊請關注PHP中文網其他相關文章!