From ccaf290b631bf329c564a43d97f44c3e9684e06b Mon Sep 17 00:00:00 2001 From: dudaodong Date: Fri, 18 Mar 2022 18:18:28 +0800 Subject: [PATCH] docs: add doc for datetime/conversion.go --- datetime/conversion.go | 4 +- docs/datetime.md | 231 ++++++++++++++++++++++++++++++++++++++++- docs/datetime_zh-CN.md | 227 +++++++++++++++++++++++++++++++++++++++- 3 files changed, 457 insertions(+), 5 deletions(-) diff --git a/datetime/conversion.go b/datetime/conversion.go index 3796ae1..ddf01fb 100644 --- a/datetime/conversion.go +++ b/datetime/conversion.go @@ -30,7 +30,7 @@ func NewFormat(t string) (*theTime, error) { return &theTime{unix: tt.Unix()}, nil } -// NewISO8601 NewFormat return unix timestamp of specified iso8601 time string +// NewISO8601 return unix timestamp of specified iso8601 time string func NewISO8601(iso8601 string) (*theTime, error) { t, err := time.ParseInLocation(time.RFC3339, iso8601, time.UTC) if err != nil { @@ -39,7 +39,7 @@ func NewISO8601(iso8601 string) (*theTime, error) { return &theTime{unix: t.Unix()}, nil } -// ToUnix return unix timestamp +// ToUnix return unix timestamp func (t *theTime) ToUnix() int64 { return t.unix } diff --git a/docs/datetime.md b/docs/datetime.md index 01fae98..7fcac69 100644 --- a/docs/datetime.md +++ b/docs/datetime.md @@ -28,7 +28,6 @@ import ( - [BeginOfWeek](#BeginOfWeek) - [BeginOfMonth](#BeginOfMonth) - [BeginOfYear](#BeginOfYear) - - [EndOfMinute](#EndOfMinute) - [EndOfHour](#EndOfHour) - [EndOfDay](#EndOfDay) @@ -41,9 +40,19 @@ import ( - [GetZeroHourTimestamp](#GetZeroHourTimestamp) - [GetNightTimestamp](#GetNightTimestamp) - [FormatTimeToStr](#FormatTimeToStr) - - [FormatStrToTime](#FormatStrToTime) +- [NewUnixNow](#NewUnixNow) +- [NewUnix](#NewUnix) +- [NewFormat](#NewFormat) +- [NewISO8601](#NewISO8601) +- [ToUnix](#ToUnix) +- [ToFormat](#ToFormat) +- [ToFormatForTpl](#ToFormatForTpl) +- [ToIso8601](#ToIso8601) + + +
## Documentation @@ -667,3 +676,221 @@ func main() { +### NewUnixNow +

Return unix timestamp of current time

+ +Signature: + +```go +type theTime struct { + unix int64 +} +func NewUnixNow() *theTime +``` +Example: + +```go +package main + +import ( + "fmt" + "github.com/duke-git/lancet/v2/datetime" +) + +func main() { + tm := datetime.NewUnixNow() + fmt.Println(tm) //&{1647597438} +} +``` + + +### NewUnix +

Return unix timestamp of specified int64 value.

+ +Signature: + +```go +type theTime struct { + unix int64 +} +func NewUnix(unix int64) *theTime +``` +Example: + +```go +package main + +import ( + "fmt" + "github.com/duke-git/lancet/v2/datetime" +) + +func main() { + tm := datetime.NewUnix(1647597438) + fmt.Println(tm) //&{1647597438} +} +``` + + + +### NewFormat +

Return unix timestamp of specified time string, t should be "yyyy-mm-dd hh:mm:ss".

+ +Signature: + +```go +type theTime struct { + unix int64 +} +func NewFormat(t string) (*theTime, error) +``` +Example: + +```go +package main + +import ( + "fmt" + "github.com/duke-git/lancet/v2/datetime" +) + +func main() { + tm, err := datetime.NewFormat("2022-03-18 17:04:05") + fmt.Println(tm) //&{1647594245} +} +``` + + + + +### NewISO8601 +

Return unix timestamp of specified iso8601 time string.

+ +Signature: + +```go +type theTime struct { + unix int64 +} +func NewISO8601(iso8601 string) (*theTime, error) +``` +Example: + +```go +package main + +import ( + "fmt" + "github.com/duke-git/lancet/v2/datetime" +) + +func main() { + tm, err := datetime.NewISO8601("2006-01-02T15:04:05.999Z") + fmt.Println(tm) //&{1136214245} +} +``` + + + +### ToUnix +

Return unix timestamp.

+ +Signature: + +```go +func (t *theTime) ToUnix() int64 +``` +Example: + +```go +package main + +import ( + "fmt" + "github.com/duke-git/lancet/v2/datetime" +) + +func main() { + tm := datetime.NewUnixNow() + fmt.Println(tm.ToUnix()) //1647597438 +} +``` + + + +### ToFormat +

Return time string 'yyyy-mm-dd hh:mm:ss'.

+ +Signature: + +```go +func (t *theTime) ToFormat() string +``` +Example: + +```go +package main + +import ( + "fmt" + "github.com/duke-git/lancet/v2/datetime" +) + +func main() { + tm, _ := datetime.NewFormat("2022-03-18 17:04:05") + fmt.Println(tm.ToFormat()) //"2022-03-18 17:04:05" +} +``` + + + +### ToFormatForTpl +

Return the time string which format is specified tpl.

+ +Signature: + +```go +func (t *theTime) ToFormatForTpl(tpl string) string +``` +Example: + +```go +package main + +import ( + "fmt" + "github.com/duke-git/lancet/v2/datetime" +) + +func main() { + tm, _ := datetime.NewFormat("2022-03-18 17:04:05") + ts := tm.ToFormatForTpl("2006/01/02 15:04:05") + fmt.Println(ts) //"2022/03/18 17:04:05" +} +``` + + +### ToIso8601 +

Return iso8601 time string.

+ +Signature: + +```go +func (t *theTime) ToIso8601() string +``` +Example: + +```go +package main + +import ( + "fmt" + "github.com/duke-git/lancet/v2/datetime" +) + +func main() { + tm, _ := datetime.NewISO8601("2006-01-02T15:04:05.999Z") + ts := tm.ToIso8601() + fmt.Println(ts) //"2006-01-02T23:04:05+08:00" +} +``` \ No newline at end of file diff --git a/docs/datetime_zh-CN.md b/docs/datetime_zh-CN.md index 6698e38..ef5eb54 100644 --- a/docs/datetime_zh-CN.md +++ b/docs/datetime_zh-CN.md @@ -28,7 +28,6 @@ import ( - [BeginOfWeek](#BeginOfWeek) - [BeginOfMonth](#BeginOfMonth) - [BeginOfYear](#BeginOfYear) - - [EndOfMinute](#EndOfMinute) - [EndOfHour](#EndOfHour) - [EndOfDay](#EndOfDay) @@ -43,6 +42,15 @@ import ( - [FormatTimeToStr](#FormatTimeToStr) - [FormatStrToTime](#FormatStrToTime) +- [NewUnixNow](#NewUnixNow) +- [NewUnix](#NewUnix) +- [NewFormat](#NewFormat) +- [NewISO8601](#NewISO8601) +- [ToUnix](#ToUnix) +- [ToFormat](#ToFormat) +- [ToFormatForTpl](#ToFormatForTpl) +- [ToIso8601](#ToIso8601) +
## 文档 @@ -665,4 +673,221 @@ func main() { ``` +### NewUnixNow +

创建一个当前时间的unix时间戳

+函数签名: + +```go +type theTime struct { + unix int64 +} +func NewUnixNow() *theTime +``` +例子: + +```go +package main + +import ( + "fmt" + "github.com/duke-git/lancet/v2/datetime" +) + +func main() { + tm := datetime.NewUnixNow() + fmt.Println(tm) //&{1647597438} +} +``` + + +### NewUnix +

创建一个unix时间戳

+ +函数签名: + +```go +type theTime struct { + unix int64 +} +func NewUnix(unix int64) *theTime +``` +例子: + +```go +package main + +import ( + "fmt" + "github.com/duke-git/lancet/v2/datetime" +) + +func main() { + tm := datetime.NewUnix(1647597438) + fmt.Println(tm) //&{1647597438} +} +``` + + + +### NewFormat +

创建一个yyyy-mm-dd hh:mm:ss格式时间字符串的unix时间戳

+ +函数签名: + +```go +type theTime struct { + unix int64 +} +func NewFormat(t string) (*theTime, error) +``` +例子: + +```go +package main + +import ( + "fmt" + "github.com/duke-git/lancet/v2/datetime" +) + +func main() { + tm, err := datetime.NewFormat("2022-03-18 17:04:05") + fmt.Println(tm) //&{1647594245} +} +``` + + + + +### NewISO8601 +

创建一个iso8601格式时间字符串的unix时间戳

+ +函数签名: + +```go +type theTime struct { + unix int64 +} +func NewISO8601(iso8601 string) (*theTime, error) +``` +例子: + +```go +package main + +import ( + "fmt" + "github.com/duke-git/lancet/v2/datetime" +) + +func main() { + tm, err := datetime.NewISO8601("2006-01-02T15:04:05.999Z") + fmt.Println(tm) //&{1136214245} +} +``` + + + +### ToUnix +

返回unix时间戳

+ +函数签名: + +```go +func (t *theTime) ToUnix() int64 +``` +例子: + +```go +package main + +import ( + "fmt" + "github.com/duke-git/lancet/v2/datetime" +) + +func main() { + tm := datetime.NewUnixNow() + fmt.Println(tm.ToUnix()) //1647597438 +} +``` + + + +### ToFormat +

返回格式'yyyy-mm-dd hh:mm:ss'的日期字符串

+ +函数签名: + +```go +func (t *theTime) ToFormat() string +``` +例子: + +```go +package main + +import ( + "fmt" + "github.com/duke-git/lancet/v2/datetime" +) + +func main() { + tm, _ := datetime.NewFormat("2022-03-18 17:04:05") + fmt.Println(tm.ToFormat()) //"2022-03-18 17:04:05" +} +``` + + + +### ToFormatForTpl +

返回tpl格式指定的日期字符串

+ +函数签名: + +```go +func (t *theTime) ToFormatForTpl(tpl string) string +``` +例子: + +```go +package main + +import ( + "fmt" + "github.com/duke-git/lancet/v2/datetime" +) + +func main() { + tm, _ := datetime.NewFormat("2022-03-18 17:04:05") + ts := tm.ToFormatForTpl("2006/01/02 15:04:05") + fmt.Println(ts) //"2022/03/18 17:04:05" +} +``` + + +### ToIso8601 +

返回iso8601日期字符串

+ +函数签名: + +```go +func (t *theTime) ToIso8601() string +``` +例子: + +```go +package main + +import ( + "fmt" + "github.com/duke-git/lancet/v2/datetime" +) + +func main() { + tm, _ := datetime.NewISO8601("2006-01-02T15:04:05.999Z") + ts := tm.ToIso8601() + fmt.Println(ts) //"2006-01-02T23:04:05+08:00" +} +```