日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)GoFrame教程:GoFramegtime-工具方法

接口文檔:https://pkg.GO.dev/github.com/gogf/gf/v2/os/gtime

方法比較簡單,比較常用的是以下幾個方法:

  1. ?Timestamp?用于獲得當(dāng)前時間戳,?TimestampMilli?、?TimestampMicro?及?TimestampNano?用于獲得當(dāng)前的毫秒、微秒和納秒值。
  2. ?Date?和?Datetime?用于獲得當(dāng)前日期及當(dāng)前日期時間。
  3. ?SetTimeZone?用于設(shè)置當(dāng)前進程的全局時區(qū)。
  4. 其他方法說明請查看接口文檔。

示例1,基本使用

創(chuàng)建時間對象及獲取當(dāng)前時間戳。

package main

import (
    "fmt"
    "github.com/gogf/gf/v2/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())
}

執(zhí)行后,輸出結(jié)果為:

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

示例2,設(shè)置時區(qū)

時區(qū)的全局設(shè)置必須要在標準庫的?time?包?import?之前調(diào)用。

package main

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

func main() {
    // 先使用標準庫打印當(dāng)前時間
    fmt.Println(time.Now().String())
    // 設(shè)置進程全局時區(qū)
    err := gtime.SetTimeZone("Asia/Tokyo")
    if err != nil {
        panic(err)
    }
    // 使用gtime獲取當(dāng)前時間
    fmt.Println(gtime.Now().String())
    // 使用標準庫獲取當(dāng)前時間
    fmt.Println(time.Now().String())
}

執(zhí)行后,輸出結(jié)果為:

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?根據(jù)常見的時間字符串解析生成?gtime.Time?對象,常見的時間字符串如下:

2017-12-14 04:51:34 +0805 LMT
2017-12-14 04:51:34 +0805 LMT
2006-01-02T15:04:05Z07:00
2014-01-17T01:19:15+08:00
2018-02-09T20:46:17.897Z
2018-02-09 20:46:17.897
2018-02-09T20:46:17Z
2018-02-09 20:46:17
2018/10/31 - 16:38:46
2018-02-09
2018.02.09

01-Nov-2018 11:50:28
01/Nov/2018 11:50:28
01.Nov.2018 11:50:28
01.Nov.2018:11:50:28
日期連接符號支持'-'、'/'、'.'

使用示例:

package main

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

func main() {
	array := []string{
		"2017-12-14 04:51:34 +0805 LMT",
		"2006-01-02T15:04:05Z07:00",
		"2014-01-17T01:19:15+08:00",
		"2018-02-09T20:46:17.897Z",
		"2018-02-09 20:46:17.897",
		"2018-02-09T20:46:17Z",
		"2018-02-09 20:46:17",
		"2018.02.09 20:46:17",
		"2018-02-09",
		"2017/12/14 04:51:34 +0805 LMT",
		"2018/02/09 12:00:15",
		"01/Nov/2018:13:28:13 +0800",
		"01-Nov-2018 11:50:28 +0805 LMT",
		"01-Nov-2018T15:04:05Z07:00",
		"01-Nov-2018T01:19:15+08:00",
		"01-Nov-2018 11:50:28 +0805 LMT",
		"01/Nov/2018 11:50:28",
		"01/Nov/2018:11:50:28",
		"01.Nov.2018:11:50:28",
		"01/Nov/2018",
	}
	cstLocal, _ := time.LoadLocation("Asia/Shanghai")
	for _, s := range array {
		if t, err := gtime.StrToTime(s); err == nil {
			fmt.Println(s)
			fmt.Println(t.UTC().String())
			fmt.Println(t.In(cstLocal).String())
		} else {
			glog.Error(s, err)
		}
		fmt.Println()
	}
}

在這個示例中,將部分時間格式串使用?StrToTime?方法轉(zhuǎn)換為?gtime.Time?對象,并輸出該事件的?UTC?時間和?CST?時間(上海時區(qū)時間)。 執(zhí)行后,輸出結(jié)果為:

2017-12-14 04:51:34 +0805 LMT
2017-12-13 20:46:34
2017-12-14 04:46:34 +0800 CST

2006-01-02T15:04:05Z07:00
2006-01-02 22:04:05
2006-01-03 06:04:05 +0800 CST

2014-01-17T01:19:15+08:00
2014-01-16 17:19:15
2014-01-17 01:19:15 +0800 CST

2018-02-09T20:46:17.897Z
2018-02-09 20:46:17
2018-02-10 04:46:17.897 +0800 CST

2018-02-09 20:46:17.897
2018-02-09 12:46:17
2018-02-09 20:46:17.897 +0800 CST

2018-02-09T20:46:17Z
2018-02-09 20:46:17
2018-02-10 04:46:17 +0800 CST

2018-02-09 20:46:17
2018-02-09 12:46:17
2018-02-09 20:46:17 +0800 CST

2018.02.09 20:46:17
2018-02-09 12:46:17
2018-02-09 20:46:17 +0800 CST

2018-02-09
2018-02-08 16:00:00
2018-02-09 00:00:00 +0800 CST

2017/12/14 04:51:34 +0805 LMT
2017-12-13 20:46:34
2017-12-14 04:46:34 +0800 CST

2018/02/09 12:00:15
2018-02-09 04:00:15
2018-02-09 12:00:15 +0800 CST

01/Nov/2018:13:28:13 +0800
2018-11-01 05:28:13
2018-11-01 13:28:13 +0800 CST

01-Nov-2018 11:50:28 +0805 LMT
2018-11-01 03:45:28
2018-11-01 11:45:28 +0800 CST

01-Nov-2018T15:04:05Z07:00
2018-11-01 22:04:05
2018-11-02 06:04:05 +0800 CST

01-Nov-2018T01:19:15+08:00
2018-10-31 17:19:15
2018-11-01 01:19:15 +0800 CST

01-Nov-2018 11:50:28 +0805 LMT
2018-11-01 03:45:28
2018-11-01 11:45:28 +0800 CST

01/Nov/2018 11:50:28
2018-11-01 03:50:28
2018-11-01 11:50:28 +0800 CST

01/Nov/2018:11:50:28
2018-11-01 03:50:28
2018-11-01 11:50:28 +0800 CST

01.Nov.2018:11:50:28
2018-11-01 03:50:28
2018-11-01 11:50:28 +0800 CST

01/Nov/2018
2018-10-31 16:00:00
2018-11-01 00:00:00 +0800 CST

標題名稱:創(chuàng)新互聯(lián)GoFrame教程:GoFramegtime-工具方法
當(dāng)前URL:http://www.5511xx.com/article/cosdsdg.html