日付を epoch に:時刻を Unix タイムスタンプまたはエポック時間に変換
人間の日付と時刻をエポック時間・Unix タイムスタンプの秒・Unix タイムスタンプのミリ秒・ISO 出力に変換する方法を学びます。タイムゾーンの選択、UTC への変換、API ペイロード、よくある誤りを扱います。
日付を epoch に変換するとは
日付を epoch に変換するとは、読みやすい日付・時刻・タイムゾーンを受け取り、数値のタイムスタンプを返すことです。その数値はどこでも同じ 1 つの瞬間を表します。例えば 2026-01-01 00:00:00 UTC は Unix 秒 1767225600 になります。
タイムゾーンは入力の一部
2026-01-01 00:00 のようなローカル時刻は、タイムゾーンがないと不完全です。UTC、ニューヨーク、ロサンゼルス、ロンドン、東京の深夜はそれぞれ別の瞬間であり、したがって別の epoch タイムスタンプになります。時刻を Unix タイムスタンプに変換する前に、必ずタイムゾーンを選んでください。
- 2026-01-01 00:00 UTC = 1767225600 秒
- 2026-01-01 00:00 America/New_York = 1767243600 秒
- 2026-01-01 00:00 America/Los_Angeles = 1767254400 秒
- 2026-01-01 00:00 Asia/Tokyo = 1767193200 秒
秒それともミリ秒?
日付を epoch に変換したら、対象システムが求める単位を選びます。バックエンド API、Linux コマンド、PHP、Python、Go、多くの SQL 関数は通常 Unix 秒を使います。JavaScript Date、ブラウザ API、多くの解析ペイロードは通常 Unix ミリ秒を使います。
- Unix 秒:1767225600
- Unix ミリ秒:1767225600000
- JavaScript:new Date('2026-01-01T00:00:00Z').getTime() はミリ秒を返す
- JavaScript 秒:Math.floor(new Date('2026-01-01T00:00:00Z').getTime() / 1000)
- SQL は to_timestamp() や FROM_UNIXTIME() で秒を受け取ることが多い
日付 → epoch が使われる場面
日付を epoch に変換するのは、システムが整形済みの日付文字列ではなく数値の時間境界を求めるときに役立ちます。
- expires_at や starts_at の値が必要な API テスト
- タイムスタンプ列を埋め戻すデータベースのマイグレーション
- 開始と終了の epoch 境界が必要な解析クエリ
- 実行時刻を数値で保存する cron・スケジューラ・キューのジョブ
- 有効期限タイムスタンプ付きの署名付き URL やトークン
日付 → epoch の FAQ
- 時刻を epoch 時間に変換するには?
- 日付・時刻・タイムゾーンを選び、その瞬間を Unix 秒またはミリ秒に変換します。タイムゾーンが欠けていると、結果が数時間ずれることがあります。
- timestamp → epoch は date → epoch と同じ?
- 通常は同じです。読みやすいタイムスタンプや日時文字列を epoch の数値に変換することを意味します。
- API には epoch 秒とミリ秒のどちらを送るべき?
- API のドキュメントに従ってください。Unix timestamp とあれば多くは秒ですが、JavaScript 向けの API はミリ秒を期待する場合があります。
- なぜ同じ日付がタイムゾーンによって違う epoch になる?
- ローカルの時計時刻は、タイムゾーンを付けて初めて 1 つの瞬間を特定するからです。2026-01-01 00:00 は UTC で 1767225600 ですが、ニューヨークでは 1767243600 — 実時間で 5 時間後です。変換前にタイムゾーンを設定してください。
More posts
UTC 時刻とは?意味・オフセット・変換を解説Unix 時間を日付に:Unix タイムスタンプを読みやすい時刻に変換エポック タイムスタンプを解説:Unix 時間、POSIX 時間、1970 年以降の秒epoch コンバーター ガイド:エポック時間・Unix 時間・タイムスタンプを変換epoch ミリ秒を日付に:13 桁のタイムスタンプと long 値を変換現在の Unix タイムスタンプ:エポック時計、UTC 時刻、ライブの Unix 時間2026 年初の Unix タイムスタンプ:1767225600 を解説JavaScript Date.now():Unix タイムスタンプの取得と変換ミリ秒 vs 秒:あらゆるアプリを壊す単位の混同データベースでのタイムスタンプ保存:DATETIME vs INT vs BIGINTライブラリなしで JavaScript のタイムゾーン正確な日付整形あらゆる開発者が出荷したことのある 7 つの Unix タイムスタンプ バグエポック時間を解説:Unix タイムスタンプ ゼロとは?