現在のUNIXタイムスタンプ
今この瞬間のエポック時間を秒単位で表示し、1秒ごとに数え上げながらコピーできる状態にしています。
1行に1つのタイムスタンプまたは日付を、最大500行まで入力できます。
このコードをDiscordのメッセージに貼り付けると、読む人それぞれのタイムゾーンと言語で表示されます。
このタイムスタンプを自分のコードで変換します。
現在のUNIXタイムスタンプ
タイムスタンプのツールを開く理由の半分は、今この瞬間の数値が欲しいからです。テストデータの値、キャッシュキー、トークンの有効期限、投稿日時のフィールド、ログ行との手早い突き合わせなどです。タイムスタンプ変換ツールのツールバーはその数値を常に表示して毎秒更新し、このページはさらにそれを変換ツールにも流し込むので、対応する日時が同時に画面に出ます。
このカウンターは、1970年1月1日00:00:00 <abbr title="Coordinated Universal Time">UTC、すなわちUNIXエポックと呼ばれる瞬間からの経過秒数です。タイムゾーンも書式も持たず、だからこそソフトウェアは時刻をこの形で保存します。暦を持ち出さずに並べ替え、比較し、引き算できる整数1つだからです。隣のコピーボタンは値をクリップボードに入れ、コピーしましたと表示して完了を知らせます。
今日の値のまわりにある基準点
現在のタイムスタンプは目で妥当性を測りにくいので、その値がどの目印の間にあるかを知っておくと役立ちます。
| 値 | UTCでの時点 | 知っておく意味 |
|---|---|---|
0 | 1970年1月1日 00:00:00 | エポックそのもの。1970年と出たら空値やNULLであることが多い |
1000000000 | 2001年9月9日 | 最初の10桁のタイムスタンプ |
2147483647 | 2038年1月19日 | 符号付き32ビットのフィールドが保持できる最大値 |
9999999999 | 2286年11月20日 | 最後の10桁のタイムスタンプ |
2行目と3行目のあいだにある値なら、現代の値としてもっともらしいと言えます。だから桁数は最初の確認として信頼できます。10桁なら秒、13桁ならミリ秒です。期限が付いているのは2038年の行で、符号付き32ビットのフィールドで時刻を保持したままのシステムはその日にあふれ、1901年の時刻を報告しはじめます。
同じ瞬間を日付として読む
現在の値が変換ツールに入っていれば、4行が同時に得られます。上部で選択中のタイムゾーンでの瞬間、同じ瞬間のUTC、多くのAPIが求めるISO 8601形式、そして「たった今」と表示され、ページを開いたままにすると「1分前」へ移っていく相対表記です。タイムゾーンを切り替えればすべてが描き直されるので、計算せずに「あちらは今何時か」に答える最短の方法になります。現在時刻を使用をクリックすれば入力欄が現在の時刻で更新されるため、日時は常にその上の数値に対応します。
コードでの同じ値
- JavaScript:
Math.floor(Date.now() / 1000)。Date.now()自体はミリ秒を返すためです。 - PHP:
time()。Python:int(time.time())。 - MySQL:
UNIX_TIMESTAMP(NOW())。PostgreSQL:EXTRACT(EPOCH FROM now())::bigint。 - Go:
time.Now().Unix()。Java:Instant.now().getEpochSecond()。C#:DateTimeOffset.UtcNow.ToUnixTimeSeconds()。 - シェル:
date +%s。
変換ツールの下のコードタブはこれらを文脈付きで出力するので、式を打ち直さずスニペットごとコピーできます。どのスニペットも、タイムスタンプ欄に入っている値について逆方向の変換もあわせて示します。
関連ページ
現在の値ではない数値を読むにはタイムスタンプを日付に変換を、13桁ならミリ秒を日付に変換を使ってください。カレンダー上の日付から数値へ進むときは、日付をタイムスタンプに変換が選んだタイムゾーンを入力した時刻に適用します。チャットサーバーでの「今から開始」という告知には、Discordのタイムスタンプが、この秒の値を読む人それぞれの時計で表示される記法で包んでくれます。