📜  红宝石 |时间 gmtime函数(1)

📅  最后修改于: 2023-12-03 15:11:36.362000             🧑  作者: Mango

红宝石 | gmtime函数

gmtime函数是Ruby编程语言中处理时间的一个有用函数。它可以将一个Unix时间戳(也就是自1970年1月1日以来的秒数)转换为一个时间元组,其中包括年份、月份、日期、小时、分钟、秒等信息。而且,gmtime函数还可以对这些时间元组进行格式化,并将其输出为字符串。

语法

Time.gmtime(seconds)

其中,seconds代表Unix时间戳,即自1970年1月1日以来的秒数。返回一个具有以下元素的时间元组: (秒, 分钟, 小时, 日期, 月份, 年份的下2位, 年份, 一周的第几天(0代表周日), 天在年份中是第几天(001-366), 是否为夏令时)

示例

以下是一个简单的示例,演示如何使用gmtime函数来获取当前时间的详细信息:

time = Time.now    # 获取当前时间对象
gm_time = Time.gmtime(time.to_i)    # 将时间戳转换为GM时间元组

puts "当前时间是 #{gm_time.year}-#{gm_time.month}-#{gm_time.day} #{gm_time.hour}:#{gm_time.min}:#{gm_time.sec}"

输出:

当前时间是 2021-10-11 02:30:24
格式化输出

除了返回时间元组以外,gmtime函数还支持将时间元组格式化为字符串输出。具体可以使用strftime函数来实现。例如,以下代码演示如何使用strftime函数将时间元组转换为“YYYY-MM-DD HH:MM:SS”格式的字符串:

time = Time.now    # 获取当前时间对象
gm_time = Time.gmtime(time.to_i)    # 将时间戳转换为GM时间元组
str_time = gm_time.strftime("%Y-%m-%d %H:%M:%S")    # 格式化输出

puts "当前时间是 #{str_time}"

输出:

当前时间是 2021-10-11 02:30:24
总结

gmtime函数是Ruby中一个非常有用的函数,可以将Unix时间戳转换为时间元组,并支持将时间元组格式化为字符串进行输出。程序员可以在项目中广泛使用这个函数,以便更好地处理时间相关的问题。