From 05aefbaa62777019d37b644b719994fdd1dd8d09 Mon Sep 17 00:00:00 2001 From: dudaodong Date: Fri, 28 Jan 2022 16:25:49 +0800 Subject: [PATCH] docs: add doc for package datetime --- docs/datetime.md | 331 +++++++++++++++++++++++++++++++++++++++++ docs/datetime_zh-CN.md | 331 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 662 insertions(+) create mode 100644 docs/datetime.md create mode 100644 docs/datetime_zh-CN.md diff --git a/docs/datetime.md b/docs/datetime.md new file mode 100644 index 0000000..b3f10bf --- /dev/null +++ b/docs/datetime.md @@ -0,0 +1,331 @@ +# Datetime +Package datetime supports date and time format and compare. + +
+ +## Source: + +[https://github.com/duke-git/lancet/blob/main/datetime/datetime.go](https://github.com/duke-git/lancet/blob/main/datetime/datetime.go) + +
+ +## Usage: +```go +import ( + "github.com/duke-git/lancet/datetime" +) +``` + +
+ +## Index +- [AddDay](#AddDay) +- [AddHour](#AddHour) +- [AddMinute](#AddMinute) +- [GetNowDate](#GetNowDate) +- [GetNowTime](#GetNowTime) +- [GetNowDateTime](#GetNowDateTime) +- [GetZeroHourTimestamp](#GetZeroHourTimestamp) +- [GetNightTimestamp](#GetNightTimestamp) +- [FormatTimeToStr](#FormatTimeToStr) + +- [FormatStrToTime](#FormatStrToTime) + +
+ +## Documentation + +## Note: +1. 'format' string param in func FormatTimeToStr and FormatStrToTime function should be one of flows: +- yyyy-mm-dd hh:mm:ss +- yyyy-mm-dd hh:mm +- yyyy-mm-dd hh +- yyyy-mm-dd +- yyyy-mm +- mm-dd +- dd-mm-yy hh:mm:ss +- yyyy/mm/dd hh:mm:ss +- yyyy/mm/dd hh:mm +- yyyy-mm-dd hh +- yyyy/mm/dd +- yyyy/mm +- mm/dd +- dd/mm/yy hh:mm:ss +- yyyy +- mm +- hh:mm:ss +- mm:ss + + +### AddDay +

Add or sub days to time.

+ +Signature: + +```go +func AddDay(t time.Time, day int64) time.Time +``` +Example: + +```go +package main + +import ( + "fmt" + "time" + "github.com/duke-git/lancet/datetime" +) + +func main() { + now := time.Now() + after2Days := datetime.AddDay(now, 2) + before2Days := datetime.AddDay(now, -2) + + fmt.Println(after2Days, before2Days) +} +``` + + +### AddHour +

Add or sub hours to time.

+ +Signature: + +```go +func AddHour(t time.Time, hour int64) time.Time +``` +Example: + +```go +package main + +import ( + "fmt" + "time" + "github.com/duke-git/lancet/datetime" +) + +func main() { + now := time.Now() + after2Hours := datetime.AddHour(now, 2) + before2Hours := datetime.AddHour(now, -2) + + fmt.Println(after2Hours, after2Hours) +} +``` + +### AddMinute +

Add or sub minutes to time.

+ +Signature: + +```go +func AddMinute(t time.Time, minute int64) time.Time +``` +Example: + +```go +package main + +import ( + "fmt" + "time" + "github.com/duke-git/lancet/datetime" +) + +func main() { + now := time.Now() + after2Minute := datetime.AddMinute(now, 2) + before2Minute := datetime.AddMinute(now, -2) + + fmt.Println(after2Minute, before2Minute) +} +``` + +### GetNowDate +

Get current date string, format is yyyy-mm-dd.

+ +Signature: + +```go +func GetNowDate() string +``` +Example: + +```go +package main + +import ( + "fmt" + "time" + "github.com/duke-git/lancet/datetime" +) + +func main() { + now := time.Now() + currentDate := datetime.GetNowDate() + fmt.Println(currentDate) // 2022-01-28 +} +``` + + +### GetNowTime +

Get current time string, format is hh:mm:ss.

+ +Signature: + +```go +func GetNowTime() string +``` +Example: + +```go +package main + +import ( + "fmt" + "time" + "github.com/duke-git/lancet/datetime" +) + +func main() { + now := time.Now() + currentTime := datetime.GetNowTime() + fmt.Println(currentDate) // 15:57:33 +} +``` + + +### GetNowDateTime +

Get current date time string, format is yyyy-mm-dd hh:mm:ss.

+ +Signature: + +```go +func GetNowDateTime() string +``` +Example: + +```go +package main + +import ( + "fmt" + "time" + "github.com/duke-git/lancet/datetime" +) + +func main() { + now := time.Now() + current := datetime.GetNowDateTime() + fmt.Println(current) // 2022-01-28 15:59:33 +} +``` + + +### GetZeroHourTimestamp +

Return timestamp of zero hour (timestamp of 00:00).

+ +Signature: + +```go +func GetZeroHourTimestamp() int64 +``` +Example: + +```go +package main + +import ( + "fmt" + "time" + "github.com/duke-git/lancet/datetime" +) + +func main() { + now := time.Now() + zeroTime := datetime.GetZeroHourTimestamp() + fmt.Println(zeroTime) // 1643299200 +} +``` + + +### GetNightTimestamp +

Return timestamp of zero hour (timestamp of 23:59).

+ +Signature: + +```go +func GetNightTimestamp() int64 +``` +Example: + +```go +package main + +import ( + "fmt" + "time" + "github.com/duke-git/lancet/datetime" +) + +func main() { + now := time.Now() + nightTime := datetime.GetNightTimestamp() + fmt.Println(nightTime) // 1643385599 +} +``` + +### FormatTimeToStr +

Format time to string, `format` param specification see note 1.

+ +Signature: + +```go +func FormatTimeToStr(t time.Time, format string) string +``` +Example: + +```go +package main + +import ( + "fmt" + "time" + "github.com/duke-git/lancet/datetime" +) + +func main() { + now := time.Now() + timeStr := datetime.FormatTimeToStr(now, "yyyy/mm/dd hh:mm:ss") + fmt.Println(timeStr) //2022/01/28 16:07:44 +} +``` + + +### FormatStrToTime +

Format string to time, `format` param specification see note 1.

+ +Signature: + +```go +func FormatStrToTime(str, format string) (time.Time, error) +``` +Example: + +```go +package main + +import ( + "fmt" + "github.com/duke-git/lancet/datetime" +) + +func main() { + time := datetime.FormatStrToTime("2006-01-02 15:04:05", "yyyy/mm/dd hh:mm:ss") + fmt.Println(time) +} +``` + + + diff --git a/docs/datetime_zh-CN.md b/docs/datetime_zh-CN.md new file mode 100644 index 0000000..665b2d8 --- /dev/null +++ b/docs/datetime_zh-CN.md @@ -0,0 +1,331 @@ +# Datetime +datetime日期时间处理包,格式化日期,比较日期。 + +
+ +## 源码: + +[https://github.com/duke-git/lancet/blob/main/datetime/datetime.go](https://github.com/duke-git/lancet/blob/main/datetime/datetime.go) + +
+ +## 用法: +```go +import ( + "github.com/duke-git/lancet/datetime" +) +``` + +
+ +## 目录 +- [AddDay](#AddDay) +- [AddHour](#AddHour) +- [AddMinute](#AddMinute) +- [GetNowDate](#GetNowDate) +- [GetNowTime](#GetNowTime) +- [GetNowDateTime](#GetNowDateTime) +- [GetZeroHourTimestamp](#GetZeroHourTimestamp) +- [GetNightTimestamp](#GetNightTimestamp) + +- [FormatTimeToStr](#FormatTimeToStr) +- [FormatStrToTime](#FormatStrToTime) + +
+ +## 文档 + +## 注: +1. 方法FormatTimeToStr和FormatStrToTime中的format参数值需要传以下类型之一: +- yyyy-mm-dd hh:mm:ss +- yyyy-mm-dd hh:mm +- yyyy-mm-dd hh +- yyyy-mm-dd +- yyyy-mm +- mm-dd +- dd-mm-yy hh:mm:ss +- yyyy/mm/dd hh:mm:ss +- yyyy/mm/dd hh:mm +- yyyy-mm-dd hh +- yyyy/mm/dd +- yyyy/mm +- mm/dd +- dd/mm/yy hh:mm:ss +- yyyy +- mm +- hh:mm:ss +- mm:ss + + +### AddDay +

将日期加/减天数

+ +函数签名: + +```go +func AddDay(t time.Time, day int64) time.Time +``` +例子: + +```go +package main + +import ( + "fmt" + "time" + "github.com/duke-git/lancet/datetime" +) + +func main() { + now := time.Now() + after2Days := datetime.AddDay(now, 2) + before2Days := datetime.AddDay(now, -2) + + fmt.Println(after2Days, before2Days) +} +``` + + +### AddHour +

将日期加/减小时数

+ +函数签名: + +```go +func AddHour(t time.Time, hour int64) time.Time +``` +例子: + +```go +package main + +import ( + "fmt" + "time" + "github.com/duke-git/lancet/datetime" +) + +func main() { + now := time.Now() + after2Hours := datetime.AddHour(now, 2) + before2Hours := datetime.AddHour(now, -2) + + fmt.Println(after2Hours, after2Hours) +} +``` + +### AddMinute +

将日期加/减分钟数

+ +函数签名: + +```go +func AddMinute(t time.Time, minute int64) time.Time +``` +例子: + +```go +package main + +import ( + "fmt" + "time" + "github.com/duke-git/lancet/datetime" +) + +func main() { + now := time.Now() + after2Minute := datetime.AddMinute(now, 2) + before2Minute := datetime.AddMinute(now, -2) + + fmt.Println(after2Minute, before2Minute) +} +``` + +### GetNowDate +

获取当天日期,返回格式:yyyy-mm-dd

+ +函数签名: + +```go +func GetNowDate() string +``` +例子: + +```go +package main + +import ( + "fmt" + "time" + "github.com/duke-git/lancet/datetime" +) + +func main() { + now := time.Now() + currentDate := datetime.GetNowDate() + fmt.Println(currentDate) // 2022-01-28 +} +``` + + +### GetNowTime +

获取当时时间,返回格式:hh:mm:ss

+ +函数签名: + +```go +func GetNowTime() string +``` +例子: + +```go +package main + +import ( + "fmt" + "time" + "github.com/duke-git/lancet/datetime" +) + +func main() { + now := time.Now() + currentTime := datetime.GetNowTime() + fmt.Println(currentDate) // 15:57:33 +} +``` + + +### GetNowDateTime +

获取当时日期和时间,返回格式:yyyy-mm-dd hh:mm:ss.

+ +函数签名: + +```go +func GetNowDateTime() string +``` +例子: + +```go +package main + +import ( + "fmt" + "time" + "github.com/duke-git/lancet/datetime" +) + +func main() { + now := time.Now() + current := datetime.GetNowDateTime() + fmt.Println(current) // 2022-01-28 15:59:33 +} +``` + + +### GetZeroHourTimestamp +

获取零时时间戳(timestamp of 00:00).

+ +函数签名: + +```go +func GetZeroHourTimestamp() int64 +``` +例子: + +```go +package main + +import ( + "fmt" + "time" + "github.com/duke-git/lancet/datetime" +) + +func main() { + now := time.Now() + zeroTime := datetime.GetZeroHourTimestamp() + fmt.Println(zeroTime) // 1643299200 +} +``` + + +### GetNightTimestamp +

获取午夜时间戳(timestamp of 23:59).

+ +函数签名: + +```go +func GetNightTimestamp() int64 +``` +例子: + +```go +package main + +import ( + "fmt" + "time" + "github.com/duke-git/lancet/datetime" +) + +func main() { + now := time.Now() + nightTime := datetime.GetNightTimestamp() + fmt.Println(nightTime) // 1643385599 +} +``` + +### FormatTimeToStr +

将日期格式化成字符串,`format` 参数格式参考注1

+ +函数签名: + +```go +func FormatTimeToStr(t time.Time, format string) string +``` +例子: + +```go +package main + +import ( + "fmt" + "time" + "github.com/duke-git/lancet/datetime" +) + +func main() { + now := time.Now() + timeStr := datetime.FormatTimeToStr(now, "yyyy/mm/dd hh:mm:ss") + fmt.Println(timeStr) //2022/01/28 16:07:44 +} +``` + + +### FormatStrToTime +

将字符串格式化成时间,`format` 参数格式参考注1

+ +函数签名: + +```go +func FormatStrToTime(str, format string) (time.Time, error) +``` +例子: + +```go +package main + +import ( + "fmt" + "github.com/duke-git/lancet/datetime" +) + +func main() { + time := datetime.FormatStrToTime("2006-01-02 15:04:05", "yyyy/mm/dd hh:mm:ss") + fmt.Println(time) +} +``` + + +