lua 日期的一些函数

简介: --根据日期获取星期几 function getWeekNum(strDate) local ymd = Split(strDate,"-") t = os.time({year=tostring(ymd[1]),month=tostring(ymd[2]),day=tostring(ymd[3])}) local weekNum = os.
--根据日期获取星期几
function getWeekNum(strDate)
    local ymd = Split(strDate,"-")
    t = os.time({year=tostring(ymd[1]),month=tostring(ymd[2]),day=tostring(ymd[3])})
    local weekNum = os.date("*t",t).wday  -1
    if weekNum == 0 then
        weekNum = 7
    end
    return weekNum
end

ngx.say(getWeekNum("2018-04-25"))

 

--根据一个日期获取下几天,dayChange参数为下几天
function getNextDay(strDate,dayChange)
    local _startDate = Split(startDate,"-")    
    local time=os.time({year=tostring(_startDate[1]), month=tostring(_startDate[2]), day=tostring(_startDate[3])})+dayChange*86400 --一天86400秒
    return (os.date('%Y',time).."-"..os.date('%m',time).."-"..os.date('%d',time))    
end

ngx.say(getNextDay("2018-04-25", 1))

 

--计算一个时间段中有几天
function getDays(startDate, endDate)
    local startDateTab = Split(startDate,"-")
    local endDateTab = Split(endDate,"-")    
    numDay1 = os.time({year=tostring(startDateTab[1]), month=tostring(startDateTab[2]), day=tostring(startDateTab[3])})
    numDay2 = os.time({year=tostring(endDateTab[1]), month=tostring(endDateTab[2]), day=tostring(endDateTab[3])})    
    return (numDay1-numDay2)/(3600*24)+1;
end

ngx.say(getDays("2018-04-25", "2018-04-20"))

 

--遍历一个值是否在数组中
function IsInTable(value, tbl)
        for k,v in ipairs(tbl) do
                if v == value then
                        return true;
                end
        end
        return false;
end

 

--获取前10分钟
ngx.print(os.date("%Y%m%d%H%M%S",os.time()-600))

 

相关文章
|
5月前
|
存储 C语言 图形学
C 函数中如何保存 Lua 的数据(1)
C 函数中如何保存 Lua 的数据(1)
77 0
|
11月前
|
存储 Java C语言
lua变量、数据类型、if判断条件和数据结构table以及【lua 函数】
lua变量、数据类型、if判断条件和数据结构table以及【lua 函数】
84 0
|
2月前
|
缓存
Lua语法(二)——闭包/日期和时间
Lua语法(二)——闭包/日期和时间
55 0
|
5月前
|
C语言
Lua 函数
Lua中的函数支持可变参数,以三点(...)表示。函数既可完成任务,也可用于计算并返回值。例如,`add(...)`函数接受任意数量参数并返回它们的和。要处理可变参数,可以将其赋值给一个表,如`arg={...}`。计算平均值的`average(...)`函数展示了如何遍历和使用这些参数。通过`select("#",...)`可以获取参数数量,`select(n, ...)`则用于访问特定位置的参数。函数定义如`function fwrite(fmt, ...)`允许固定参数与可变参数结合使用。
|
5月前
|
C语言
Lua 函数
Lua中的函数支持可变参数,用三点`...`表示。函数可以用于执行任务或返回计算值。示例中展示了如何处理可变参数,如计算参数总和(`add`函数)和平均值(`average`函数)。`select("#",...)`用于获取参数数量,`select(n, ...)`用于获取从n开始的参数列表。`average`函数在不同实例中展示了使用可变参数的方式,始终返回参数的平均值。`fwrite`函数展示了固定参数与可变参数的组合使用。
Lua 函数
Lua函数是主要的抽象机制,用于执行任务或计算值。函数定义格式包括可选的函数作用域(默认全局)、函数名、参数列表和函数体。例如,定义一个名为`max`的函数,接收两个参数`num1`和`num2`,返回它们中的最大值。函数可以作为参数传递,如示例中将`myprint`函数传递给`add`函数,实现功能组合。
|
5月前
|
C语言 C++ 索引
C 函数中如何保存 Lua 的数据(2)
C 函数中如何保存 Lua 的数据(2)
65 1
[✔️]lua中的module函数
[✔️]lua中的module函数
167 0
|
XML 自然语言处理 Java
【Lua基础 第5章 】unpack()和pack()、Lua 中的文件 I/O、简单模式下io的部分方法、完全模式下file的部分方法、日期和时间、闭包使用
unpack()和pack()、Lua 中的文件 I/O、简单模式下io的部分方法、完全模式下file的部分方法、日期和时间、闭包使用
777 0
【Lua基础 第5章 】unpack()和pack()、Lua 中的文件 I/O、简单模式下io的部分方法、完全模式下file的部分方法、日期和时间、闭包使用
下一篇
无影云桌面