UNIX時間⇔日時変換(日本時間)

チートシートPDF

UNIX時間を入れると日本時間に、日時を入れるとUNIX時間に変換します。秒(10桁)とミリ秒(13桁)は自動で見分けます。

現在のUNIX時間(秒)-
ミリ秒-
日本時間-

UNIX時間 → 日時

日時 → UNIX時間

タイムゾーンが無ければ日本時間。末尾に Z や +00:00 も可

入力したデータは送信も保存もしません。悪用することも一切ありません。くわしく

UNIX時間(エポック秒)とは

UNIX時間は、1970年1月1日 0時0分0秒(UTC)からの経過秒数で日時を表す方法です。 タイムゾーンに左右されない1つの数値で時刻を扱えるため、データベース、ログ、APIのレスポンス、JWT の有効期限(exp)などで広く使われています。 ただし数字のままでは人が読めないので、障害調査やデータ確認のときに日時への変換が必要になります。

よく見るUNIX時間(早見表)

UNIX時間(秒)日本時間
01970/01/01 09:00:00
1000000000(10億秒)2001/09/09 10:46:40
17000000002023/11/15 07:13:20
2000000000(20億秒)2033/05/18 12:33:20
2147483647(32bitの上限)2038/01/19 12:14:07

日本時間は UTC より9時間進んでいるので、UNIX時間 0 は日本時間では1970年1月1日の午前9時です。 ログの時刻が9時間ずれている場合は、UTC と JST の取り違えを疑ってください。

各言語での取得・変換方法

言語・環境現在のUNIX時間
JavaScriptMath.floor(Date.now() / 1000)
Pythonint(time.time())
PHPtime()
JavaInstant.now().getEpochSecond()
Linux / Macdate +%s
PowerShell[DateTimeOffset]::Now.ToUnixTimeSeconds()
MySQLUNIX_TIMESTAMP() / 逆変換 FROM_UNIXTIME(n)
Excel=(A1/86400)+DATE(1970,1,1)+9/24(日本時間の日時に変換)

時刻順に並ぶID(UUID v7)からは生成時刻を取り出せます。UUID生成ツールもあわせてどうぞ。

よくある質問

秒とミリ秒の見分け方は?

現在のUNIX時間は、秒なら10桁(17億台)、ミリ秒なら13桁です。このツールは桁数で自動判定します。JavaScript の Date.now() や Java の System.currentTimeMillis() はミリ秒、Unix の date +%s や PHP の time() は秒です。

タイムゾーンを指定せずに日時を入れるとどうなりますか?

日本時間(JST, UTC+9)として扱います。「Z」や「+00:00」を末尾に付けると、その時差で解釈します。

2038年問題とは?

UNIX時間を32ビットの符号付き整数で保存しているシステムでは、2038年1月19日 12:14:07(日本時間)を過ぎると値があふれて誤動作します。64ビットで扱えば問題ありません。

変換・計算の結果は正確さに努めていますが、すべての入力での動作を保証するものではありません。 業務で使う場合は、重要なデータは結果を確認してからご利用ください。詳しくは免責事項をご覧ください。