> timestamp | epoch | convertire <
// Converti timestamp Unix in date e date in timestamp istantaneamente
Orologio in tempo reale
Visualizzazione del timestamp Unix aggiornata in tempo reale. Vedi il tempo epoch attuale scorrere.
Conversione bidirezionale
Converti timestamp in date leggibili e date in timestamp. Entrambe le direzioni supportate.
Formati multipli
Visualizza risultati in ISO 8601, RFC 2822, UTC, ora locale e tempo relativo.
// SUI TIMESTAMP UNIX
Come funzionano i timestamp Unix:
Un timestamp Unix (noto anche come tempo epoch o tempo POSIX) rappresenta il numero di secondi trascorsi dal 1° gennaio 1970 00:00:00 UTC (l'epoca Unix). Questo semplice valore intero fornisce un modo universale e indipendente dal fuso orario di rappresentare un momento specifico nel tempo.
Esempio:
1711324800 → 2024-03-25T00:00:00.000Z
Casi d'uso comuni:
- >Archiviazione e query di timestamp nei database
- >Campi temporali nelle risposte API
- >Analisi dei timestamp nei file di log
- >Debug di problemi legati al tempo
- >Coordinamento temporale tra fusi orari
- >Il problema Y2K38: gli interi a 32 bit traboccano il 19 gennaio 2038
>> domande frequenti
D: Cos'è un timestamp Unix?
R: Un timestamp Unix è il numero di secondi trascorsi dal 1° gennaio 1970 00:00:00 UTC. È un semplice valore intero usato universalmente nell'informatica.
D: Cos'è il tempo epoch?
R: Il tempo epoch è un altro nome per il timestamp Unix. L'«epoch» si riferisce al punto di riferimento: 1° gennaio 1970 00:00:00 UTC.
D: Cos'è il problema Y2038?
R: Il problema dell'anno 2038 (Y2K38) si verifica perché molti sistemi memorizzano i timestamp Unix come interi a 32 bit con segno, che possono rappresentare tempi solo fino al 19 gennaio 2038 03:14:07 UTC.
D: Qual è la differenza tra timestamp in secondi e millisecondi?
R: I timestamp Unix in secondi hanno 10 cifre (es: 1711324800), mentre quelli in millisecondi ne hanno 13 (es: 1711324800000).
D: I timestamp Unix possono essere negativi?
R: Sì, i timestamp Unix negativi rappresentano date prima del 1° gennaio 1970. Ad esempio, -86400 rappresenta il 31 dicembre 1969.
// Promemoria: lunghezza del timestamp
Conta le cifre per capire l’unità. Confondere secondi e millisecondi è la causa più frequente di una data sbagliata.
| Cifre | Unità | Esempio | Origine tipica |
|---|---|---|---|
| 10 | s | 1711324800 | Unix/Linux, PHP time(), Stripe |
| 13 | ms | 1711324800000 | JavaScript Date.now(), Java |
| 16 | µs | 1711324800000000 | Kafka, Cassandra |
| 19 | ns | 1711324800000000000 | Go UnixNano(), InfluxDB |
// Ottenere il timestamp attuale nel codice
JavaScript Math.floor(Date.now() / 1000) Python int(time.time()) PHP time() Go time.Now().Unix() Java Instant.now().getEpochSecond() Ruby Time.now.to_i Bash date +%s
>> Altre domande
D: Un timestamp Unix è in UTC o in ora locale?
R: Sempre in UTC. L’intero è un istante assoluto senza fuso orario; il fuso viene applicato solo quando lo mostri come data. Salva in UTC, visualizza in ora locale.
D: Perché il mio timestamp mostra la data sbagliata?
R: Di solito si confondono secondi e millisecondi: un valore di 13 cifre letto come secondi finisce intorno all’anno 55.000, uno di 10 cifre letto come millisecondi finisce a gennaio 1970. Controlla anche la conversione del fuso e che non sia un FILETIME di Windows o una data di Excel.
D: Come influiscono i secondi intercalari sui timestamp Unix?
R: Non influiscono. Il tempo Unix conta esattamente 86.400 secondi al giorno e ignora i secondi intercalari, che vengono ripetuti o distribuiti (leap smear). Va bene per quasi tutte le applicazioni; per misure scientifiche si usa il TAI.
D: Esistono altre epoche oltre a Unix?
R: Sì: NTP usa 1900-01-01, Windows FILETIME 1601-01-01 (intervalli da 100 ns), Excel conta i giorni dal 1899-12-30 e Mac HFS+ usava 1904-01-01. Se un valore è molto lontano dal numero Unix attuale, probabilmente è una di queste varianti.