
UNIXタイム(エポック秒)とは?
UNIXタイム(UNIX Time)は、**1970年1月1日 00:00:00 UTC(協定世界時)**からの経過秒数を表す数値です。「エポックタイム」とも呼ばれます。
コンピューターシステムにおいて、日付や時刻を扱う際の標準的な形式として広く利用されています。
なぜUNIXタイムを使うのか?
- 比較が容易: 数値であるため、2つの日時の前後関係や差分を簡単に計算できます。
- タイムゾーンに依存しない: UNIXタイム自体は常にUTCに基づいているため、地理的な場所に関わらず同一の数値を共有できます。
- データ量が少ない: 文字列(例:
2026-01-14 12:00:00)に比べて保存容量が小さく済みます。
秒か、ミリ秒か?
開発現場で最も多いミスの一つが、「秒」と「ミリ秒」の混同です。
- 秒 (Seconds): 10桁の数値(例:
1736823600)。PHPやPython、標準的なUNIXコマンドなどでよく使われます。 - ミリ秒 (Milliseconds): 13桁の数値(例:
1736823600000)。JavaScriptのDate.now()や Java などで一般的に使われます。
APIから取得した値がどちらの単位かを確認することは、正確な日時計算において極めて重要です。
タイムゾーンとオフセットの扱い
UNIXタイムは常にUTCですが、人間が読み取る際にはその土地の「タイムゾーン」に変換する必要があります。
- UTC (協定世界時): 世界の基準時刻。
- JST (日本標準時): 日本の時刻。UTCより9時間進んでいます(UTC+09:00)。
2038年問題とは?
古いシステム(32ビットの整数型を使用しているもの)では、UNIXタイムが 2,147,483,647(2038年1月19日 03:14:07 UTC)を超えると、オーバーフローして負の値に戻ってしまう問題があります。現代の新しく構築されるシステムの多くは64ビットを利用しているため、この問題は解消されつつあります。
DevToolKitsで簡単に変換する
手動で計算するのは面倒でミスが起きがちです。当サイトのツールを使えば、双方向の変換が瞬時に行えます。
- UNIXタイム変換: UNIXタイム(秒・ミリ秒)と日時の相互変換が可能です。
- タイムゾーン変換 (UTC⇔JST): 異なるタイムゾーン間での日時計算をサポートします。
💡 ヒント: ISO8601形式(
2026-01-14T12:00:00Z)での表示にも対応しているため、API仕様の確認などにも便利です。