Qué es un Unix timestamp y por qué se usa tanto
El Unix timestamp (epoch) representa el tiempo como un número: segundos transcurridos desde el 1 de enero de 1970 en UTC. Es extremadamente común en APIs, logs, colas de eventos y tokens JWT porque es fácil de comparar, ordenar y almacenar. En JavaScript, el motor trabaja con milisegundos, por eso es tan habitual encontrar ambos formatos (s y ms).
Tabla comparativa rápida
| Formato | Ejemplo | Uso típico | Nota |
|---|---|---|---|
| Unix (s) | 1700000000 | Backend / JWT | 10 dígitos |
| Unix (ms) | 1700000000000 | JavaScript | 13 dígitos |
| ISO 8601 | 2026-02-18T09:00:00Z | Intercambio web | UTC explícito |
| SQL DATETIME | 2026-02-18 09:00:00 | Bases de datos | Depende de TZ |
Ejemplos prácticos con código
// JS: timestamp (s) a ISO UTC
const ts = 1700000000;
console.log(new Date(ts * 1000).toISOString());
// JS: ISO a timestamp (s y ms)
const ms = Date.parse("2026-02-18T09:00:00Z");
const s = Math.floor(ms / 1000);
console.log({ ms, s });
// PHP: timestamp a fecha UTC
$ts = 1700000000;
echo gmdate("Y-m-d H:i:s", $ts);
// MySQL: timestamp a datetime
SELECT FROM_UNIXTIME(1700000000);