Получить начало и конец эпохи на сегодня
Я использую API, который требует start_time
и end_time
в эпоху, которая даст мне данные между этими временами. Вопрос в том, что я хочу получить все данные от начала UTC сегодня до конца UTC сегодня.
Какой самый эффективный способ сделать это в ruby?
3 ответа
Решение
Вы можете использовать ActiveSupport
Date
функции #beginning_of_day
а также #end_of_day
, И использовать to_i
преобразовать время в секунды с начала эпохи.
require 'active_support/core_ext'
Date.today.beginning_of_day.to_i
# => 1395532800
Date.today.end_of_day.to_i
# => 1395619199
Date.today.to_time.to_i
должен дать вам начало, и
(Date.today + 1).to_time.to_i
должен получить вам конец.
Если вы не используете рельсы или не хотите импортировать require 'active_support/core_ext'
по какой-то причине вы можете сделать это с помощью ruby следующим образом
Date.today.to_time.to_i # beginning_of_day
=> 1481221800
Date.today.to_time.change(hour: 23, min: 59, sec: 59).to_i # end_of_day
=> 1481308199