【发布时间】:2016-02-13 11:56:14
【问题描述】:
使用os.time我怎样才能得到自unix时代以来已经过去了多少个月(Unix时间戳)
我只需要它作为月份ID,所以任何类型的数字都可以,只要它每个月都在变化,并且可以反转得到实际月份。
【问题讨论】:
标签: date unix lua unix-timestamp roblox
使用os.time我怎样才能得到自unix时代以来已经过去了多少个月(Unix时间戳)
我只需要它作为月份ID,所以任何类型的数字都可以,只要它每个月都在变化,并且可以反转得到实际月份。
【问题讨论】:
标签: date unix lua unix-timestamp roblox
local function GetMonth(seconds)
local dayduration,year = 3600*24
local days={31,0,31,30,31,30,31,31,30,31,30,31}
for i=1970,10000 do -- For some reason too lazy to use while
local yeardays = i%4 == 0 and i%100 ~= 0 and 366 or 365
local yearduration = dayduration * yeardays
if yearduration < seconds then
seconds = seconds - yearduration
else
year = i break
end
end
days[2]=(year%4==0) and 29 or 28
seconds = seconds%(365*24*3600)
for i=1,12 do
if seconds>days[i]*dayduration then
seconds=seconds-days[i]*dayduration
else
return --i + year*12 <-- If you want a unique ID
end
end
end
目前,它会给出数字 2,因为它是 2 月。如果您取消注释最后的唯一 ID 代码,您将得到 554,这意味着我们目前处于纪元以来的第 554 个月。
正如 Jean-Baptiste Yunès 在他的回答 cmets 中所说,我不确定你的句子是否:
注意:这是用于 Lua,但我无法使用 os.date
意味着您没有 os.date,或者您不知道如何使用它。你对这两种情况都有一个答案,你可以使用你需要的那个。
【讨论】:
这可能会奏效:
print (os.date("*t",os.time())["month"])
os.time() 以数字形式为您提供当前日期。 os.date("*t",...) 将其转换为表格,其中month 等于日期对应的月份数。
【讨论】:
os.time然后