Convertitore di timestamp Unix
Converti timestamp Unix in secondi o millisecondi in date leggibili in ora locale, UTC e ISO 8601, e trasforma qualsiasi data in tempo epoch.
Timestamp → data
- Ora locale
- –
- UTC
- –
- ISO 8601
- –
Data → timestamp
- Secondi
- –
- Millisecondi
- –
Come usare il convertitore di timestamp Unix
- Per convertire un timestamp in data, incolla un valore epoch come
1700000000o1700000000000. Lo strumento capisce dalla sua grandezza se è in secondi o in millisecondi. - Leggi il risultato nel tuo fuso orario locale, in UTC e nel formato ISO 8601.
- Per la direzione opposta, inserisci una data e un’ora: lo strumento restituisce il valore epoch corrispondente sia in secondi sia in millisecondi.
- Dai un’occhiata al Timestamp attuale in alto, aggiornato in tempo reale, ogni volta che ti serve “adesso” come valore epoch.
Che cos’è un timestamp Unix?
Un timestamp Unix, chiamato anche tempo epoch o tempo POSIX, è il numero di secondi trascorsi dall’epoca Unix: il 1° gennaio 1970 alle 00:00:00 UTC. Per esempio, 1700000000 corrisponde al 14 novembre 2023 alle 22:13:20 UTC. Le date precedenti al 1970 sono rappresentate da numeri negativi.
I timestamp piacciono agli sviluppatori perché sono un unico numero che non dipende da fusi orari, ora legale o formati di data. Confrontare due istanti è una semplice sottrazione, e ordinare per tempo è un semplice ordinamento numerico. Li trovi nei database, nei file di log, nelle risposte delle API, nei claim JWT come exp e iat, nei metadati dei file e negli scheduler di tipo cron.
Tieni presente che il tempo Unix ignora i secondi intercalari: ogni giorno conta esattamente 86.400 secondi. Questo mantiene semplici i calcoli, ed è il motivo per cui un timestamp non è un conteggio rigoroso di ogni secondo fisico dal 1970.
Secondi o millisecondi
La fonte di confusione più frequente è l’unità di misura. I sistemi Unix tradizionali, PHP, time.time() di Python e la maggior parte dei database usano i secondi, che oggi danno un numero di 10 cifre. Date.now() di JavaScript, System.currentTimeMillis() di Java e molte API JSON usano i millisecondi, che danno un numero di 13 cifre. Interpretare i millisecondi come secondi ti porta decine di migliaia di anni nel futuro; interpretare i secondi come millisecondi ti riporta al gennaio 1970. Lo strumento guarda la grandezza del numero per scegliere automaticamente l’unità giusta e, quando converte una data, mostra entrambi i valori così puoi copiare quello che il tuo sistema si aspetta.
Ora locale, UTC e ISO 8601
Un timestamp identifica un istante preciso, ma quell’istante viene mostrato in modo diverso a seconda del fuso orario. Il risultato locale usa il fuso orario configurato sul tuo dispositivo (in Italia l’ora dell’Europa centrale, UTC+1, o l’ora legale, UTC+2), mentre UTC è il riferimento universale usato da server e log. ISO 8601, come 2023-11-14T22:13:20.000Z, è il formato testuale non ambiguo consigliato per scambiare date tra sistemi; la Z finale indica UTC.
Il problema dell’anno 2038
Molti sistemi datati memorizzano il tempo Unix come intero a 32 bit con segno, il cui valore massimo è 2.147.483.647. Questo limite viene raggiunto il 19 gennaio 2038 alle 03:14:07 UTC. Un secondo dopo, un contatore del genere va in overflow trasformandosi in un grande numero negativo e viene letto come una data del dicembre 1901. Sistemi operativi, database e linguaggi moderni sono in gran parte passati a valori di tempo a 64 bit, che spostano il limite di miliardi di anni nel futuro, ma dispositivi embedded, vecchi formati di file e vecchie colonne di database possono ancora essere coinvolti. JavaScript non ne è toccato, perché memorizza il tempo in millisecondi in un numero in virgola mobile a 64 bit.
Privacy
Tutte le conversioni avvengono nel tuo browser con le sue funzioni di data integrate. Nessun timestamp e nessuna data vengono inviati a un server.
Domande frequenti
Come capisco se il mio timestamp è in secondi o in millisecondi?
Conta le cifre. Una data attuale ha 10 cifre in secondi e 13 cifre in millisecondi. Lo strumento applica automaticamente la stessa logica, in base alla grandezza del numero.
Perché l'ora locale è diversa da UTC?
Entrambe descrivono lo stesso istante. L’ora locale applica lo scostamento del fuso orario del tuo dispositivo e le regole dell’ora legale, mentre UTC non ha scostamenti. Se condividi un orario con persone che si trovano altrove, UTC o ISO 8601 evitano equivoci.
Un timestamp Unix può essere negativo?
Sì. I valori negativi rappresentano istanti precedenti al 1° gennaio 1970 UTC. Per esempio, -86400 è il 31 dicembre 1969 alle 00:00:00 UTC.
Un timestamp Unix contiene un fuso orario?
No. Un timestamp è sempre riferito a UTC e non porta con sé alcuna informazione sul fuso orario. Il fuso conta solo quando lo mostri come data e ora di calendario.
I miei sistemi smetteranno di funzionare nel 2038?
Solo se memorizzano il tempo in un intero a 32 bit con segno. Controlla i database più vecchi, il firmware embedded e i formati di file binari. Tutto ciò che usa il tempo a 64 bit è al sicuro per il futuro prevedibile.
Strumenti correlati
- Generatore di UUID Generatore di UUID versione 4 e 7 gratuito. Crea fino a 1.000 UUID alla volta, in maiuscolo o senza trattini, poi copiali o scaricali in .txt.
- Formattatore e validatore JSON Formattatore e validatore JSON gratuito che formatta, minifica e controlla il JSON nel browser, con gli errori di sintassi indicati per riga e colonna.