strptime
とはどう違いstrftime
ますか?それstrptime
はDateTime
クラスstrftime
のメソッドであり、クラスのメソッドTime
です。
3 に答える
との違いは、実装に関係Time
しDateTime
ています。多くのDateTime
機能は Rails の世界から来ており、任意の日付と時刻です。カレンダーベースのシステムです。Time
1970 年 1 月 1 日 UTC からの秒数で測定され、タイムゾーンに依存しません。一部のシステムでは、1901 から 2038 の間の値に制限されています。これは、この値が従来、符号付き 32 ビット整数として格納される方法の制限でした。しかし、Ruby の新しいバージョンでは、64 ビット値または BigNum を使用して、はるかに広い範囲を処理できます。要求に応じ。
要するに、DateTime
Rails のデータベースから得られるものです。Time は、Ruby が伝統的に使用してきたものです。日付が重要な値を操作していて、月末や 6 週間先の日付などを知りたい場合は、DateTime を使用します。経過時間を測定しているだけで、それを気にしない場合は、Time を使用してください。必要に応じて簡単に変換できます。
Date
一方、単なるカレンダーの日付であり、関連する時間はありません。時間が関係ない場合は、これらを使用することをお勧めします。
strptime
は「解析時間」の略で、strftime
は「フォーマット時間」の略です。つまり、便宜上、同じフォーマット仕様を使用しているstrptime
のとは逆です。通常は何が起こっているのかを理解するのに優れているため、使用されるstrftime
ことはめったにありませんが、本当にそれを綴る必要がある場合は、必ずレガシーパーサーを使用してください.strptime
DateTime.parse