165 votes

Comment obtenir de l'UTC timestamp en ruby?

Comment obtenir de l'UTC timestamp en ruby.?

278voto

manzhikov Points 1479

Vous pouvez utiliser: Time.now.to_i.

125voto

Joey Points 148544
time = Time.now.getutc

Justification: À mes yeux un timestamp, c'est exactement cela: Un point dans le temps. Ce peuvent être représentées avec précision un objet. Si vous avez besoin d'autre chose, une valeur scalaire, par exemple, de secondes depuis l'époque Unix, de 100 ns intervalles, depuis 1601 ou peut-être une chaîne de caractères à des fins d'affichage ou de stockage de l'horodatage dans une base de données, vous pouvez facilement obtenir que de l'objet. Mais cela dépend beaucoup de votre intention d'utilisation.

Dire que la »vraie timestamp est le nombre de secondes depuis l'époque Unix)« est un peu à côté de la question, car c'est une manière de représenter un point dans le temps, mais il a également besoin d'informations supplémentaires à même de savoir que vous avez affaire à une heure et non un nombre. Un Time objet résout ce problème gentiment en représentant un point dans le temps et aussi être plus explicite sur ce qu'il est.

55voto

Tim Sylvester Points 14047

La mise en forme par défaut n'est pas très utile, à mon avis. Je préfère ISO8601 que c'est triable, relativement compact et largement reconnu:

>> require 'time'
=> true
>> Time.now.utc.iso8601
=> "2011-07-28T23:14:04Z"

18voto

Yuki Matsukura Points 101

Généralement timestamp n'a pas de fuseau horaire.

% irb
> Time.now.to_i == Time.now.getutc.to_i
=> true

7voto

chava Points 21

A quoi bon un horodatage avec sa granularité donné en secondes? Je trouve ça beaucoup plus pratique de travail avec le Temps.maintenant.to_f. Heck, vous pouvez même jeter un to_s.sub('.',") pour se débarrasser de la virgule, ou d'effectuer un transtypage comme ceci: Integer(1e6*Temps.maintenant.to_f).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X