Unix時間(タイムスタンプ)変換
ログやデータベース、APIに出てくるUnix時間を貼り付けると日時がわかります。日時を選べばタイムスタンプに変換。桁数から単位を自動で判定します。
このツールを自分のサイトに埋め込む
コードをコピーしてページのHTMLに貼り付けてください。無料です。クレジットのリンクは残してください。
プログラムでの変換方法
- JavaScript:Math.floor(Date.now() / 1000)、new Date(秒 * 1000)
- Python:int(time.time())、datetime.fromtimestamp(秒, tz=timezone.utc)
- PHP:time()、date('c', $秒)
- SQL(PostgreSQL):extract(epoch from now())、to_timestamp(秒)
- シェル:date +%s、date -d @1700000000(Linux)または date -r 1700000000(Mac)
覚えておきたいUnix時間
| 秒 | UTC | 意味 |
|---|---|---|
| 0 | 1970-01-01 00:00:00 | Unixエポック(起点) |
| 1000000000 | 2001-09-09 01:46:40 | 初めて10桁になった時刻 |
| 1234567890 | 2009-02-13 23:31:30 | 覚えやすい並び |
| 2147483647 | 2038-01-19 03:14:07 | 32ビット符号付き整数の上限(2038年問題) |
| 4102444800 | 2100-01-01 00:00:00 | 2100年 |
よくある質問
Unix時間とは?
1970年1月1日 00:00:00 UTCからの経過秒数です(うるう秒は数えません)。世界中どこでも同じ値なのでタイムゾーンはなく、日時として表示するときに初めてJSTなどのタイムゾーンが関係します。
秒とミリ秒の見分け方は?
Unixのコマンド、PHP、Pythonのtime.time()、JWTは秒(現在は10桁)です。JavaScriptのDate.now()やJavaのSystem.currentTimeMillis()はミリ秒(13桁)。データベースやGoではマイクロ秒・ナノ秒を使うこともあります。
2038年問題とは?
Unix時間を符号付き32ビット整数で保存しているシステムは 2,147,483,647(2038年1月19日 03:14:07 UTC、日本時間12:14:07)までしか数えられず、1秒後に負の値(1901年12月)に戻ってしまう問題です。64ビットで保存していれば起きません。
貼り付けた内容はサーバーに送られる?
送られません。このツールはJavaScriptとブラウザ内蔵のWeb Crypto APIだけで、すべて端末の中で動きます。入力・貼り付け・読み込んだ内容がアップロードや保存されることはありません。