lua中os.time和os.date的区别

一、相同点

两个函数需要注意的地方就是加入了时区的概念

二、不同点

1)os.time()函数

  • 作用
    os.time() 得到是当前时间的距离1970.1.1.08:00时间的秒数,如果传入的参数小于这个时间,那么就会得到一个,秒数就是负数,会得到一个空值
  • 注意点
    1、不传参的话返回当前时间转化成秒数的结果 local time2 = os.time()
    2、 传参返回指定时间转化秒数的结果 local time = os.time({year =2016, month = 11, day =23, hour =17, min =17, sec = 00})
    print(“====================time=,”,time) – 结果打印 1479892620
    3、任何一个时区,在相同的时间,同时调用os.time() 返回的结果都是一样的

2)os.date()函数

  • 注意点
    1、把时间戳转化成可显示的时间字符串

dump(os.date(“*t”,0),“—>”) – 格式化成表的形式显示

2.print("===============os.date()==",os.date("%Y-%m-%d%H:%M:%S",1479892620))
Result:
===============os.date()==   2016-11-23﹎17:17:00

3、如果服务器返回一个时间戳,客户端想要转换成可读样式,需要考虑到时区问题,因为是按照本地时区转换的,如果本地时区跟服务器所在时区不一致,就会导致时间显示错误,一般解决办法就是 加上时区差即可。ps:如果有夏令时,则需要加上3600s

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
`os.date` 是 Lua 标准库的一个函数,用于格式化日期和时间。它的语法如下: ```lua os.date(format [, time]) ``` 其,`format` 是格式化字符串,用于指定输出的日期和时间格式,它由以下格式化选项组成: | 格式化选项 | 说明 | | --- | --- | | `%a` | 星期几的缩写(例如:`Mon`) | | `%A` | 星期几的全名(例如:`Monday`) | | `%b` | 月份的缩写(例如:`Jan`) | | `%B` | 月份的全名(例如:`January`) | | `%c` | 日期和时间(例如:`Mon Jan 7 13:23:56 2019`) | | `%d` | 月份的第几天(例如:`07`) | | `%H` | 小时(24 小时制,例如:`13`) | | `%I` | 小时(12 小时制,例如:`01`) | | `%j` | 年份的第几天(例如:`007`) | | `%m` | 月份(例如:`01`) | | `%M` | 分钟(例如:`23`) | | `%p` | 上午或下午(例如:`PM`) | | `%S` | 秒(例如:`56`) | | `%w` | 星期几的数字表示(0~6,其 0 表示星期天) | | `%x` | 日期(例如:`01/07/19`) | | `%X` | 时间(例如:`13:23:56`) | | `%y` | 年份的后两位(例如:`19`) | | `%Y` | 年份的完整表示(例如:`2019`) | | `%z` | 时区偏移量(例如:`-0800`) | `time` 是可选的,用于指定要格式化的日期和时间,它的类型可以是数字或者一个 `os.time()` 返回的时间表。如果不指定 `time`,则默认使用当前的系统时间。 以下是一些示例: ```lua -- 输出当前时间的完整表示 print(os.date("%c")) -- 输出当前时间的日期部分(例如:01/07/19) print(os.date("%x")) -- 输出当前时间的时间部分(例如:13:23:56) print(os.date("%X")) -- 输出当前时间的小时数(例如:13) print(os.date("%H")) -- 输出当前时间的分钟数(例如:23) print(os.date("%M")) -- 输出当前时间的秒数(例如:56) print(os.date("%S")) -- 输出当前时间的星期几的全名(例如:Monday) print(os.date("%A")) -- 输出当前时间的月份的缩写(例如:Jan) print(os.date("%b")) -- 输出当前时间的年份的完整表示(例如:2019) print(os.date("%Y")) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值