github.com/gogf/gf@v1.16.9/.example/os/gtime/gtime_strtotime.go (about)

     1  package main
     2  
     3  import (
     4  	"fmt"
     5  	"time"
     6  
     7  	"github.com/gogf/gf/os/glog"
     8  	"github.com/gogf/gf/os/gtime"
     9  )
    10  
    11  func main() {
    12  	array := []string{
    13  		"2017-12-14 04:51:34 +0805 LMT",
    14  		"2006-01-02T15:04:05Z07:00",
    15  		"2014-01-17T01:19:15+08:00",
    16  		"2018-02-09T20:46:17.897Z",
    17  		"2018-02-09 20:46:17.897",
    18  		"2018-02-09T20:46:17Z",
    19  		"2018-02-09 20:46:17",
    20  		"2018.02.09 20:46:17",
    21  		"2018-02-09",
    22  		"2017/12/14 04:51:34 +0805 LMT",
    23  		"2018/02/09 12:00:15",
    24  		"01/Nov/2018:13:28:13 +0800",
    25  		"01-Nov-2018 11:50:28 +0805 LMT",
    26  		"01-Nov-2018T15:04:05Z07:00",
    27  		"01-Nov-2018T01:19:15+08:00",
    28  		"01-Nov-2018 11:50:28 +0805 LMT",
    29  		"01/Nov/2018 11:50:28",
    30  		"01/Nov/2018:11:50:28",
    31  		"01.Nov.2018:11:50:28",
    32  		"01/Nov/2018",
    33  	}
    34  	cstLocal, _ := time.LoadLocation("Asia/Shanghai")
    35  	for _, s := range array {
    36  		if t, err := gtime.StrToTime(s); err == nil {
    37  			fmt.Println(s)
    38  			fmt.Println(t.UTC().String())
    39  			fmt.Println(t.In(cstLocal).String())
    40  		} else {
    41  			glog.Error(s, err)
    42  		}
    43  		fmt.Println()
    44  	}
    45  }