📜  ruby 时间戳 - Ruby (1)

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

Ruby 时间戳 - Ruby

介绍

在 Ruby 中,时间戳表示从 1970-01-01 00:00:00 UTC 开始经过的秒数。在很多情况下,我们需要在 Ruby 中使用时间戳来进行时间计算或者时间格式转换。

本文将介绍 Ruby 中如何获取当前时间戳,如何将时间戳转换为时间格式,以及如何将时间格式转换为时间戳。

获取当前时间戳

要获取当前时间戳,可以使用 Time.now.to_i 方法。该方法将当前时间转换为整数型时间戳,表示当前时间距离 1970-01-01 00:00:00 UTC 经过的秒数。

# 获取当前时间戳
puts Time.now.to_i
# 输出示例:1605810883
将时间戳转换为时间格式

要将时间戳转换为时间格式,可以使用 Time.at 方法。该方法将整数型时间戳转换为时间对象。

# 将时间戳转换为时间格式
puts Time.at(1605810883).strftime("%Y-%m-%d %H:%M:%S")
# 输出示例:2020-11-20 15:54:43

其中,strftime 方法可以根据指定的格式化字符串将时间对象转换为字符串类型。该格式化字符串可以包含以下格式化参数:

  • %Y:四位数字的年份
  • %m:两位数字的月份(01-12)
  • %d:两位数字的日期(01-31)
  • %H:两位数字的小时数(00-23)
  • %M:两位数字的分钟数(00-59)
  • %S:两位数字的秒数(00-59)
将时间格式转换为时间戳

要将时间格式转换为时间戳,可以使用 Time.parse 方法。该方法将字符串类型的时间格式转换为时间对象,然后使用 to_i 方法获取该时间对象的整数型时间戳。

# 将时间格式转换为时间戳
puts Time.parse("2020-11-20 15:54:43").to_i
# 输出示例:1605810883
总结

Ruby 中的时间戳表示从 1970-01-01 00:00:00 UTC 开始经过的秒数。我们可以使用 Time.now.to_i 方法获取当前时间戳,使用 Time.at 方法将时间戳转换为时间格式,使用 Time.parse 方法将时间格式转换为时间戳。