Unix timestamp in data e ora – convertitore di timestamp epoch

Ultima revisione dei contenuti:

Incolla un timestamp Unix e leggi data e ora. Il valore 1700000000 corrisponde al 14 novembre 2023, 22:13:20 UTC. Il convertitore riconosce secondi, millisecondi, microsecondi e nanosecondi dal numero di cifre, e l’opzione Ora locale mostra l’ora del tuo dispositivo.

Puoi inserire secondi, millisecondi, microsecondi o nanosecondi. L’unità viene riconosciuta dal numero di cifre.

UTC
Fuso orario

Con UTC l’ora appare senza scostamento, come la registrano log e database. Con l’ora locale appare nel fuso orario del tuo dispositivo, insieme allo scostamento.

in

Che cos’è uno Unix timestamp, o tempo Unix?

Uno Unix timestamp, detto anche tempo Unix o epoch, è il numero di secondi trascorsi dalla mezzanotte UTC di giovedì 1º gennaio 1970[1]. Quell’istante è lo zero del conteggio e si chiama epoca Unix. UTC è il tempo coordinato universale, il riferimento da cui si contano i fusi orari del mondo.

Il modo di contare è stabilito da POSIX, lo standard comune dei sistemi di tipo Unix. Qui ogni giorno ha esattamente 86 400 secondi[2]. I secondi intercalari aggiunti a UTC non hanno un numero proprio in questo conteggio[1].

Il timestamp non contiene informazioni sul fuso orario[3]. Il numero 1700000000 descrive lo stesso istante a Roma e a New York. Cambia solo l’ora che mostrano gli orologi delle due città in quell’istante.

Cinque orologi da parete con i nomi Sídney, Londres, Monterrey, Vancouver e New York
Gli orologi di cinque città segnano cinque ore diverse. Un solo timestamp Unix descrive lo stesso istante su tutti e cinque i quadranti, e cambia solo l’ora letta in ciascun fuso. Foto: Luis Cortes, Unsplash.

A quale data corrisponde uno Unix timestamp?

Lo Unix timestamp 1700000000 corrisponde al 14 novembre 2023 alle 22:13:20 UTC. In Italia erano le 23:13:20, perché a novembre vale l’ora solare, pari a UTC+1[4].

La data di qualsiasi timestamp la leggi nel convertitore qui sopra. Incolla il numero nel campo Timestamp Unix e la data compare nel campo Data e ora mentre scrivi. Sotto il risultato, il convertitore indica in quale unità ha letto il numero.

Riconosce l’unità dal numero di cifre. Un timestamp attuale in secondi ha dieci cifre. Un valore di JavaScript ne ha tredici, perché Date.now() restituisce millisecondi[5]. Il risultato di time.time_ns() in Python ha diciannove cifre, perché questa funzione conta nanosecondi[6].

L’opzione Ora locale del selettore Fuso orario mostra l’ora nel fuso del tuo dispositivo e aggiunge al risultato lo scostamento del fuso. In Italia è +01:00 d’inverno e +02:00 d’estate[4].

Il timestamp di una data scelta lo calcoli con il convertitore da data a Unix timestamp.

Come si converte uno Unix timestamp in data? Formula ed esempio

Nel tempo Unix ogni giorno ha esattamente 86 400 secondi[2]. Per convertire un timestamp in data, dividilo per 86 400. La parte intera del risultato è il numero di giorni interi dal 1º gennaio 1970. Il resto della divisione è l’ora di quel giorno espressa in secondi.

Prendi il timestamp 1700000000. Diviso per 86 400 dà 19 675 giorni interi. Il resto è di 80 000 secondi.

Se il 1º gennaio 1970 conta come giorno zero, il giorno 19 675 è il 14 novembre 2023. Il resto è l’ora di quel giorno: 80 000 secondi sono 22 ore, 13 minuti e 20 secondi. Il risultato completo è 2023-11-14 22:13:20 UTC.

Un timestamp in millisecondi va diviso prima per 1000, uno in microsecondi per un milione e uno in nanosecondi per un miliardo. Il convertitore qui sopra fa questa divisione da solo prima di calcolare la data. Il calcolo inverso, da una data a un numero di secondi, lo fa il convertitore da data a Unix timestamp.

Un timestamp scritto in esadecimale, come 6553F100, convertilo prima in decimale. Lo fa il convertitore da decimale a esadecimale dopo un clic su Inverti ordine. Il valore 6553F100 in decimale è 1700000000.

Quali date corrispondono ai timestamp Unix tondi?

Abbiamo raccolto timestamp tondi e limite: l’epoca, i giorni intorno, ogni successivo centinaio di milioni di secondi, il timestamp con le cifre da 1 a 0 in ordine e i limiti di un intero a 32 bit. Tutte le date sono in UTC, come le mostra il convertitore con l’opzione UTC.
TimestampData e ora in UTCChe cosa segna questo valore
-21474836481901-12-13 20:45:52Il più piccolo intero con segno a 32 bit
-864001969-12-31 00:00:00Un giorno prima dell’epoca
-11969-12-31 23:59:59Ultimo secondo prima dell’epoca
01970-01-01 00:00:00Epoca Unix
864001970-01-02 00:00:00Fine del primo giorno
10000000002001-09-09 01:46:40Un miliardo di secondi
12345678902009-02-13 23:31:30Cifre da 1 a 0 in ordine
15000000002017-07-14 02:40:001,5 miliardi di secondi
16000000002020-09-13 12:26:401,6 miliardi di secondi
17000000002023-11-14 22:13:201,7 miliardi di secondi
17356896002025-01-01 00:00:00Inizio del 2025
17672256002026-01-01 00:00:00Inizio del 2026
18000000002027-01-15 08:00:001,8 miliardi di secondi
20000000002033-05-18 03:33:20Due miliardi di secondi
21474836472038-01-19 03:14:07Il più grande intero con segno a 32 bit
41024448002100-01-01 00:00:00Inizio del 2100
42949672952106-02-07 06:28:15Il più grande intero senza segno a 32 bit
Il 13 febbraio 2009 alle 23:31:30 UTC il tempo Unix ha raggiunto 1234567890, con le cifre da 1 a 0 in ordine[1]. In Italia era già il 14 febbraio. Un contatore salvato come intero con segno a 32 bit trabocca dopo il valore 2147483647. Il suo valore passa allora a -2147483648, cioè al 13 dicembre 1901[7]. In binario 2147483647 si scrive con 31 cifre 1, come mostra il convertitore da decimale a binario.

Come capire se un timestamp è in secondi, millisecondi o nanosecondi?

L’unità si riconosce dal numero di cifre. Ogni timestamp dal 9 settembre 2001 al 20 novembre 2286 ha dieci cifre in secondi. Per le date di oggi la lunghezza in ogni unità resta quindi la stessa.
UnitàCifre oggiL’istante 1700000000 in questa unitàDove la trovi
Secondi101700000000time() di PHP, campo exp di un JWT, timestamp su Discord
Millisecondi131700000000000Date.now() di JavaScript, EPOCHTODATE con unità 2
Microsecondi161700000000000000EPOCHTODATE con unità 3
Nanosecondi191700000000000000000time.time_ns() di Python
La funzione time() di PHP restituisce il numero di secondi dall’epoca[3]. I campi exp, nbf e iat di un JWT contengono un numero di secondi che può avere una parte decimale[8]. Discord accetta il timestamp in secondi[9]. Date.now() restituisce millisecondi[5] e time.time_ns() di Python nanosecondi[6]. La funzione EPOCHTODATE di Fogli Google accetta l’unità 1 per i secondi, 2 per i millisecondi e 3 per i microsecondi[10].

Con quale formula o comando si converte uno Unix timestamp in data?

Ogni riga converte il timestamp 1700000000 nel 14 novembre 2023, 22:13:20 UTC. Abbiamo verificato con questo timestamp i risultati del comando date, di Python e di JavaScript.
DoveFormula o comandoRisultato per 1700000000
Excel=A1/86400+DATA(1970;1;1)2023-11-14 22:13:20 dopo aver dato alla cella un formato data e ora
Excel, timestamp in millisecondi=A1/86400000+DATA(1970;1;1)La stessa data per il valore 1700000000000
Fogli Google=EPOCHTODATE(A1)Data e ora in UTC
Fogli Google, millisecondi=EPOCHTODATE(A1; 2)Data e ora in UTC per il valore 1700000000000
MySQLSELECT FROM_UNIXTIME(1700000000);2023-11-14 22:13:20 se la sessione è in UTC
PostgreSQLSELECT to_timestamp(1700000000);2023-11-14 22:13:20+00 se la sessione è in UTC
Pythondatetime.fromtimestamp(1700000000, tz=timezone.utc)2023-11-14 22:13:20+00:00
JavaScriptnew Date(1700000000 * 1000).toISOString()2023-11-14T22:13:20.000Z
Linux, comando datedate -u -d @1700000000Tue Nov 14 22:13:20 UTC 2023
PowerShell 7.1 e successiviGet-Date -UnixTimeSeconds 1700000000 -AsUTCData e ora in UTC nel formato delle impostazioni internazionali
MySQL restituisce il risultato di FROM_UNIXTIME nel fuso orario della sessione, cioè nel fuso impostato per la connessione in corso[11]. PostgreSQL converte un timestamp con la funzione to_timestamp nel tipo timestamp with time zone[12]. PostgreSQL mostra i valori di questo tipo nel fuso indicato dal parametro TimeZone[13]. In Python la riga richiede l’import from datetime import datetime, timezone. Il metodo utcfromtimestamp è deprecato dalla versione 3.12 e la documentazione consiglia fromtimestamp con il fuso UTC[14]. Il comando date accetta il timestamp preceduto dal simbolo @[15]. Get-Date ha i parametri -UnixTimeSeconds e -AsUTC da PowerShell 7.1[16].

Come impostare la formula in Excel e Fogli Google per mostrare una data?

Per un solo timestamp è più rapido il campo qui sopra. Un’intera colonna di timestamp esportati da un database si converte con una formula trascinata verso il basso.

  1. Excel: formula con la funzione DATA

    Scrivi il timestamp nella cella A1 e la formula =A1/86400+DATA(1970;1;1) nella cella B1. In Excel in italiano la funzione DATA ha gli argomenti anno, mese e giorno[17]. La formula divide i secondi per i secondi di un giorno e somma il risultato alla data del 1º gennaio 1970.
  2. Excel: formato data e ora nella cella

    Excel archivia le date come numeri seriali sequenziali, e il 1º gennaio 1900 ha il numero seriale 1[17]. Per questo la cella B1 mostra prima un numero di giorni con decimali, circa 45244,93. In Formato celle scegli la categoria Personalizzato e scrivi il formato aaaa-mm-gg hh:mm:ss. Vedrai 2023-11-14 22:13:20[18].
  3. Excel: cartella di lavoro con il sistema data 1904

    Excel può contare le date dal 1º gennaio 1904, e la differenza tra i due sistemi data è di 1 462 giorni[19]. Nel sistema 1900 il 1º gennaio 1970 ha il numero 25569, nel sistema 1904 lo stesso giorno ha il numero 24107. DATA restituisce il numero nel sistema data della cartella di lavoro, quindi la formula dà la data corretta in entrambi i sistemi.
  4. Fogli Google: la funzione EPOCHTODATE

    In Fogli Google basta la formula =EPOCHTODATE(A1). Un timestamp in millisecondi richiede il secondo argomento 2, uno in microsecondi l’argomento 3. Il risultato è sempre in UTC, qualunque sia il fuso orario del foglio[10].
  5. Ora italiana nel foglio

    Le due formule danno UTC. Per l’ora solare italiana aggiungi 1/24 al risultato, cioè un’ora. Durante l’ora legale aggiungi 2/24, perché l’ora legale è UTC+2[4].

Perché il convertitore mostra un’ora diversa dal tuo orologio?

Il convertitore mostra UTC come impostazione predefinita, perché il timestamp stesso si conta in questa scala[1]. In Italia vale l’ora solare, UTC+1, e da fine marzo a fine ottobre l’ora legale, UTC+2[4]. L’ora legale comincia l’ultima domenica di marzo alle 2:00 e finisce l’ultima domenica di ottobre alle 3:00[4].

Per questo il timestamp 1700000000 dà le 22:13:20 in UTC e le 23:13:20 a Roma. D’estate la differenza è di due ore. Il timestamp 1782864000 è la mezzanotte UTC del 1º luglio 2026, e in Italia in quel momento sono le 2:00.

I database funzionano allo stesso modo. MySQL mostra il risultato di FROM_UNIXTIME nel fuso orario della sessione[11]. Lo stesso timestamp letto con la sessione in UTC e con la sessione in Europe/Rome dà due ore diverse.

L’opzione Ora locale del selettore Fuso orario mostra l’ora italiana senza calcoli, se il tuo dispositivo ha il fuso italiano. Il timestamp di un’ora italiana precisa lo calcoli con il convertitore da data a Unix timestamp.

Orologio digitale su una scrivania accanto a una tastiera, che segna le 10:03
Un orologio da scrivania mostra l’ora locale. Il convertitore mostra UTC come impostazione predefinita, e l’opzione Ora locale ti dà l’ora che segna un orologio come questo. Foto: Andrei Anufrienko, Unsplash.

Fonti

  1. Tempo (Unix) — Wikipedia
  2. The Open Group Base Specifications Issue 8 (POSIX.1-2024), 4.19 Seconds Since the Epoch — The Open Group
  3. time — PHP Manual — The PHP Group
  4. Ora legale — Wikipedia
  5. Date.now() — MDN Web Docs
  6. time — Time access and conversions — Python Software Foundation
  7. Year 2038 problem — Wikipedia (inglese)
  8. RFC 7519: JSON Web Token (JWT) — IETF
  9. Reference — Message Formatting — Discord Developer Documentation
  10. Funzione EPOCHTODATE — Guida di Editor di documenti Google
  11. MySQL 8.4 Reference Manual, Date and Time Functions — Oracle
  12. PostgreSQL Documentation, Date/Time Functions and Operators — PostgreSQL Global Development Group
  13. PostgreSQL Documentation, Date/Time Types — PostgreSQL Global Development Group
  14. datetime — Basic date and time types — Python Software Foundation
  15. GNU Coreutils, Seconds since the Epoch — Free Software Foundation
  16. Get-Date (Microsoft.PowerShell.Utility) — Microsoft Learn
  17. DATA — Microsoft Support
  18. Formattare una data nel modo desiderato in Excel — Microsoft Support
  19. Sistemi data in Excel — Microsoft Support

Tutti i valori delle tabelle sono stati calcolati dalle definizioni delle unità e verificati con il calcolo prima della pubblicazione. I dati storici e i nomi delle unità locali si basano sulle fonti elencate sopra.

Ultima revisione dei contenuti: · scritto e verificato dal team Arteon

Domande frequenti sullo Unix timestamp

Qual è lo Unix timestamp attuale?

Il timestamp attuale aumenta di uno ogni secondo. A settembre 2026 è compreso tra 1788220800 e 1790812799. Il valore esatto lo restituisce nella console del browser l’espressione Math.floor(Date.now() / 1000), perché Date.now() restituisce millisecondi[5].

Che cosa significa il campo exp di un JWT?

Il campo exp indica l’istante a partire dal quale il token non deve essere accettato. Il suo valore è il numero di secondi dal 1º gennaio 1970 UTC, senza contare i secondi intercalari[8]. Incollalo nel convertitore e vedrai data e ora di scadenza del token. Con lo stesso formato sono scritti il campo iat, l’istante di emissione del token, e il campo nbf, l’istante prima del quale il token non deve essere accettato[8].

Che cos’è il problema dell’anno 2038?

Il 19 gennaio 2038 alle 03:14:08 UTC il numero di secondi raggiunge 2 elevato alla 31, un valore fuori da quelli rappresentabili con un intero con segno a 32 bit[1]. Il valore massimo, 2147483647, si scrive 7FFFFFFF nel convertitore da decimale a esadecimale. A quel punto il contatore trabocca e mostra il 13 dicembre 1901[7]. Dalla versione 5.6 del 2020 il kernel Linux gestisce il tempo a 64 bit anche sulle architetture a 32 bit[7].

Uno Unix timestamp può essere negativo?

Sì. I valori negativi indicano istanti precedenti al 1º gennaio 1970[12]. Il timestamp -86400 è il 31 dicembre 1969 alle 00:00:00 UTC. Il convertitore accetta il segno meno davanti al numero.

Come tratta il tempo Unix i secondi intercalari?

Nel tempo Unix ogni giorno ha esattamente 86 400 secondi[2], quindi un secondo intercalare non ha un numero proprio. La documentazione di GNU riporta un esempio di fine 2016. Il timestamp 1483228799 è il 31 dicembre alle 23:59:59 UTC, e il timestamp 1483228800 è già la mezzanotte del 1º gennaio 2017. Il secondo 23:59:60 non si può scrivere come timestamp[15].

Come mostro uno Unix timestamp in un messaggio su Discord?

Scrivi <t:1700000000> nel messaggio. Discord mostra quell’istante nel fuso orario e nel formato di ogni lettore. Lo stile si aggiunge dopo un secondo carattere di due punti: <t:1700000000:R> mostra il tempo relativo e <t:1700000000:F> la data completa con il giorno della settimana[9].

Perché Python ha deprecato utcfromtimestamp?

Il metodo datetime.utcfromtimestamp() è deprecato da Python 3.12. Restituisce un oggetto senza fuso orario, e molti metodi del modulo datetime trattano un oggetto del genere come ora locale. La documentazione consiglia al suo posto datetime.fromtimestamp(timestamp, tz=timezone.utc)[14].

Il campo accetta punti, spazi e valori in millisecondi?

Sì. Puoi separare le cifre a gruppi di tre con punti, spazi, trattini bassi o apostrofi, come in 1 700 000 000. Una sola virgola o un solo punto separano la frazione di secondo, come in 1700000000,5. Millisecondi, microsecondi e nanosecondi il convertitore li riconosce da solo dal numero di cifre.

Come riconverto una data in Unix timestamp?

Clicca su Inverti ordine. Si apre il convertitore da data a Unix timestamp con il risultato del campo Data e ora già inserito. Lì scrivi la data come 2023-11-14 22:13:20 oppure 14.11.2023 22:13.

Screenshot dello strumento gratuito Arteon: Unix timestamp in data e ora – convertitore di timestamp epoch

Aiutaci a migliorare i nostri strumenti

Hai un’idea, trovato un bug o vuoi suggerire una funzionalità? Scrivici.