如何提取unix时间戳并获取日期

时间:2016-09-14 14:07:52

标签: go

我有一个整数

classList

我想从Golang中的这个unix时间戳中获取日期。我试过x := 1468540800 ,但看起来这不是从中提取日期的正确方法。会话应该像http://www.unixtimestamp.com/index.php一样发生 我打算转换成ISO 8601格式可能。我想要像time.ParseDuration这样的字符串。

4 个答案:

答案 0 :(得分:3)

您可以将t := time.Unix(int64(x), 0)的位置设置为当地时间 或者使用t := time.Unix(int64(x), 0).UTC()并将位置设置为UTC。

您可以使用t.Format("2006-01-02")进行格式化, 代码(试试The Go Playground):

package main

import (
    "fmt"
    "time"
)

func main() {
    x := 1468540800
    t := time.Unix(int64(x), 0).UTC() //UTC returns t with the location set to UTC.
    fmt.Println(t.Format("2006-01-02"))
}

输出:

2016-07-15

答案 1 :(得分:2)

使用time.Unix,纳秒设置为0。

t := time.Unix(int64(x), 0)

游乐场:https://play.golang.org/p/PpOv8Xm-CS

答案 2 :(得分:1)

您可以使用strconv.ParseInt()与time.Unix一起解析为int64。

myTime,errOr := strconv.ParseInt(x, 10, 64)
    if errOr != nil {
        panic(errOr)
    }
    newTime := time.Unix(myTime, 0)

答案 3 :(得分:-2)

$timestamp=1468540800;
echo gmdate("Y-m-d", $timestamp);