Timestamp Unix
Qu'est-ce qu'un timestamp Unix (horodatage) ?
Un timestamp Unix — aussi appelé horodatage Unix, temps Unix, heure POSIX ou epoch time — est le nombre de secondes écoulées depuis le 1ᵉʳ janvier 1970 à 00:00:00 UTC, un point de départ appelé « l'epoch » (ou « époque Unix »). En français, on parle d'horodatage : une valeur numérique qui représente une date et une heure précises.
C'est la façon la plus simple pour un ordinateur de représenter une date et une heure : un seul nombre entier, identique partout dans le monde et indépendant du fuseau horaire. On retrouve l'horodatage Unix dans les bases de données, les fichiers journaux (logs), les API, les systèmes Linux et la plupart des langages de programmation (PHP, JavaScript, Python, Java, SQL…).
Point important : un horodatage Unix est toujours compté en UTC (temps universel, proche du GMT). C'est au moment de l'afficher qu'on le traduit dans un fuseau horaire pour obtenir une date et une heure « humaines ». Le même nombre 1700000000 correspond ainsi à 23 h 13 à Paris, 17 h 13 à New York ou 7 h 13 le lendemain à Tokyo — exactement le même instant, lu à des heures locales différentes. Convertir un timestamp en date, ou une date en timestamp, revient donc simplement à choisir le fuseau d'affichage.
Pourquoi utiliser un horodatage (timestamp Unix) ?
Représenter une date et une heure par un simple nombre — l'horodatage — offre de nombreux avantages pour les développeurs, les bases de données et les ordinateurs :
Secondes ou millisecondes ?
Selon les systèmes, le timestamp est exprimé en secondes ou en millisecondes.
Les systèmes Unix/Linux, PHP ou MySQL utilisent généralement les secondes (aujourd'hui 10 chiffres, ex. 1750166400). JavaScript et beaucoup d'API web utilisent les millisecondes (13 chiffres, ex. 1750166400000).
Pas d'inquiétude : ce convertisseur détecte automatiquement l'unité. Si vous collez 13 chiffres, il comprend qu'il s'agit de millisecondes ; sinon, il lit des secondes.
Quelques repères utiles
Le bug de l'an 2038 : les systèmes qui stockent le timestamp sur un entier 32 bits ne pourront plus compter au-delà du 19 janvier 2038 à 03:14:07 UTC. Les systèmes modernes (64 bits) ne sont pas concernés.