Unixtime

そういえば今までしっかり意識していなかった話……

任意の日の0時0分0秒(UTC)のunixtimeを1日の長さ(86400秒)で割ると、必ず整数になる。

2024-12-15 09:00:00(日本時間) = 2024-12-15 00:00:00(UTC) → 1734220800 / 86400 = 20072

何を当たり前のことを、と思うかもしれないが、うるう秒というものを思い出すとこれは奇妙だ。うるう秒を考えると、0時0分0秒が86400の倍数とは限らない。 この謎の答えはシンプルで、unixtime はうるう秒を無視している。
UNIX時間 - Wikipedia

おかげで00:00:00からの経過秒数や、毎時0分からの経過秒数を求めるような処理は簡単に書ける(逆に言うと、うるう秒が影響するようなシステムにunixtimeを使うときはよくよく考えないといけない)