Lua之Date和Time

2019-02-21 16:27:53 浏览数 (1)

Lua标准库中提供了关于时间函数os.time()和os.date(), 不同的是这两个函数引入时区的设置

os.time()

1. 不带任何参数, 返回的是当前系统时间转化为秒数的结果 

返回的秒数是根据当前时间的距离1970.1.1.08:00时间的秒数,如果传入的参数小于这个时间,那么就会得到一个,秒数就是负数,会得到一个空值.

代码语言:javascript复制
// 当前系统时间 2018年5月12日19:15 

time = os.time()

print(time)  // 1526123720 / 60 / 60 / 24 / 365  = 48 year  (大概时间)

os.date()

  1. 不带任何参数, 返回包含日期和时间的字符串
代码语言:javascript复制
date = os.date()

print(date)  //Sat May 12 19:24:14 2018
  1. 如果格式以!开始, 则返回格林威治时间 (GMT), 如果格式字符串为*t,则返回以下结构的表
代码语言:javascript复制
 year (four digits), month (1–12), day (1–31), hour (0–23), min (0–59), sec (0–61), wday (weekday, Sunday is 1), yday (day of the year), and isdst (daylight saving flag, a boolean).  
代码语言:javascript复制
local d = os.date("!*t")
for i, v in pairs(d) do
    print(i,v)
end 
----- 
hour    11
min 30
wday    7
day 12
month   5
year    2018
sec 54
yday    132
isdst   false
--- 

参考

  • Lua 5.2 官方文档
  • lua 时间函数os.time()和os.date()
  • lua Date和Time
  • 格林威治时间 (GMT)

0 人点赞