Skip to main content

组件

数据结构

GoFrame中提供了一些常用的数据结构,如列表、队列、集合、Map等,详细内容见官方文档。

时间

当前时间

t := gtime.Now()
t := gtime.Date()
t := gtime.Datetime()

创建时间对象

t := gtime.New("2023-11-03 21:45:22")

参数可以是字符串、时间戳、时间对象等数据

t := gtime.NewFromStr("2023-11-03 21:50:25")
t, err := gtime.StrToTime("2023-11-03 21:50:25")

将字符串转为时间对象,具体支持的时间格式见文档时间管理/工具方法

设置时区

gtime.SetTimeZone("Asia/Tokyo")
t := gtime.Now()

时间戳

t1 := gtime.Timestamp()
t2 := gtime.TimestampMilli()
t3 := gtime.TimestampMicro()
t4 := gtime.TimestampNano()

返回为int64类型,也可以返回字符串类型

t1 := gtime.TimestampStr()
t2 := gtime.TimestampMilliStr()
t3 := gtime.TimestampMicroStr()
t4 := gtime.TimestampNanoStr()

格式化日期数据

可以将日期格式化为指定的格式,具体格式化用到的符号见文档时间管理/时间格式

t := gtime.Now()
req.Response.Writeln(t.Format("Y-m-d H:i:s"))
req.Response.Writeln(t.Format("YmdHis"))

获取年月日时分秒

t := gtime.Now()
req.Response.Writeln(t.Year())
req.Response.Writeln(t.Month())
req.Response.Writeln(t.Day())
req.Response.Writeln(t.Hour())
req.Response.Writeln(t.Minute())
req.Response.Writeln(t.Second())

更多操作方法见文档时间管理/方法介绍

随机数

随机整数

n := grand.Intn(100)

返回0 <= n < 100的随机数

n := grand.N(100, 999)

返回100 <= n <= 999的随机数

随机字符串

s := grand.S(10)
s := grand.S(10, true)

返回指定长度的随机字母/数字组合的字符串,第二个参数为true表示包括特殊符号

s := grand.Digits(10)

返回指定长度的随机数字字符串

s := grand.Letters(10)

返回指定长度的随机字母字符串

s := grand.Symbols(10)

返回指定长度的随机特殊符号字符串

s := grand.Str("日照香炉生紫烟,遥看瀑布挂前川。Oh Yeah", 5)

从给定的字符串中随机返回指定数量的字符,可以是汉字。

全局唯一数

s := guid.S()