3.7. Konwersja czasu między strefami czasowymi

Problem

Chcemy reprezentowaną przez obiekt chwilę czasu przekształcić do postaci równoważnej w innej strefie czasowej.

Rozwiązanie

Najczęściej wykonywanymi konwersjami tego rodzaju są konwersje z czasu lokalnego na czas „uniwersalny” i odwrotnie. Wykonuje się je bardzo prosto w obydwu klasach Time i DateTime.

Metoda Time#gmtime modyfikuje „w miejscu” odnośny obiekt, przekształcając go do postaci zgodnej ze strefą GMT (czyli czasem UTC). Konwersja odwrotna wykonywana jest przez metodę Time#localtime (także modyfikującą obiekt „w miejscu”).

now = Time.now # => Thu Oct 12 02:21:57 Europa Środkowa (czas stand.) 2006 now.gmtime # => Thu Oct 12 00:21:57 UTC 2006 now.localtime # => Thu Oct 12 ...

Get Ruby. Receptury now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.