前置き
APIの設計をしている時など、日付のデータのフォーマットを決めなければならない場面はよくあるとおもいます。
日付の形式で僕がよく使うものをまとめてみました。
Unixtime形式
Rubyでは以下のようにすると出力させることが出来ます。
unixtimeサンプル
Time.at(1460426012)
=> 2016-04-12 10:53:32 +0900
Time.now.to_i
=> 1468319659
RFC822形式
EメールやRSS2.0の日付形式として使われているようです。
Rubyでは以下のようにすると出力させることが出来ます。
rfc822サンプル
require 'time'
Time.now.rfc822
=> "Tue, 12 Jul 2016 19:30:22 +0900"
ISO8601形式
Rubyでは以下のように出力させることが出来ます。
iso8601サンプル
require 'time'
Time.now.iso8601
=> "2016-07-12T19:33:18+09:00"
(※)Rubyでは **拡張形式** という形式が使われているようですね。
個人的には、、、
APIのレスポンスなどで返す日付の形式は ISO8601
の形式が人間にもわかりやすくて一番いいのではと思っています。
おまけ
Rails(active support) を入れている場合は以下の様なメソッドでも表示できるようです。
Time.now.to_s(:rfc822)
Time.now.to_s(:iso8601)
以上、備忘録でした。