comment puis-je soustraire deux dates UTC différentes dans Ruby, puis obtenir la différence en minutes?Soustraire les dates dans Ruby et obtenir la différence en minutes
Merci
comment puis-je soustraire deux dates UTC différentes dans Ruby, puis obtenir la différence en minutes?Soustraire les dates dans Ruby et obtenir la différence en minutes
Merci
(time1 - time2)/60
Si les objets de temps sont chaîne, Time.parse(time)
les premiers
Si vous soustrayez deux objets Date ou DateTime, le résultat est un rationnel représentant la nombre de jours entre eux. Qu'est-ce que vous avez besoin est:
a = Date.new(2009, 10, 13) - Date.new(2009, 10, 11)
(a * 24 * 60).to_i # 2880 minutes
ou
a = DateTime.new(2009, 10, 13, 12, 0, 0) - DateTime.new(2009, 10, 11, 0, 0, 0)
(a * 24 * 60).to_i # 3600 minutes
Je ne sais pas si cela a peut-être changé entre les versions (la réponse de Chubas est courante sur Internet), mais à partir de la version 1.9.3p364, c'est la bonne réponse. – Ephemera
Je pense que ma réponse a été correcte depuis qu'avant 1.9.3 a été publié :) –
La deuxième partie de la réponse n'est pas correcte. 'DateTime' renvoie le nombre de secondes, et la réponse acceptée doit être appliquée dans ce cas - signifiant' (DateTime.new - DateTime.new)/60' – Aleks
https://rubygems.org/gems/time_difference - joyau de différence de temps pour Ruby
start_time = Time.new(2013,1)
end_time = Time.new(2014,1)
TimeDifference.between(start_time, end_time).in_minutes
TimeDifference gem est une excellente solution – utiq
devrait pas être * 24 * 60? – mscccc
Cela dépend si les objets en question sont des objets Heure ou des objets Date. Time # - renvoie le nombre de secondes, tandis que Date # - renvoie le nombre de jours. –