Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

工具方法

https://godoc.org/github.com/gogf/gf/os/gtime

方法比较简单,比较常用的是以下几个方法; 1. Timestamp用于获得当前时间戳,TimestampMilliTimestampMicroTimestampNano用于获得当前的毫秒、微秒和纳秒值。 2. DateDatetime用于获得当前日期及当前日期时间。 3. SetTimeZone用于设置当前进程的全局时区。 4. 其他方法说明请查看接口文档。

示例1,基本使用

创建时间对象及获取当前时间戳。

package main

import (
    "fmt"
    "github.com/gogf/gf/os/gtime"
)

func main() {
    fmt.Println("Date       :", gtime.Date())
    fmt.Println("Datetime   :", gtime.Datetime())
    fmt.Println("Second     :", gtime.Timestamp())
    fmt.Println("Millisecond:", gtime.TimestampMilli())
    fmt.Println("Microsecond:", gtime.TimestampMicro())
    fmt.Println("Nanosecond :", gtime.TimestampNano())
}

...

Date       : 2018-07-22
Datetime   : 2018-07-22 11:52:22
Second     : 1532231542
Millisecond: 1532231542688
Microsecond: 1532231542688688
Nanosecond : 1532231542688690259

示例2,设置时区

package main

import (
    "fmt"
    "github.com/gogf/gf/os/gtime"
    "time"
)

func main() {
    // 先使用标准库打印当前时间
    fmt.Println(time.Now().String())
    // 设置进程全局时区
    err := gtime.SetTimeZone("Asia/Tokyo")
    if err != nil {
        panic(err)
    }
    // 使用gtime获取当前时间
    fmt.Println(gtime.Now().String())
    // 使用标准库获取当前时间
    fmt.Println(time.Now().String())
}

...

2018-11-21 22:50:56.723429 +0800 CST m=+0.000649366
2018-11-21 23:50:56
2018-11-21 23:50:56.723832 +0900 JST m=+0.001052780

示例3,StrToTime

除了通过New方法外,也可以通过StrToTime根据常见的时间字符串解析生成gtime.Time对象,常见的时间字符串如下:

...