Convertitore di Timestamp Unix

Da timestamp a data leggibile e viceversa — secondi e millisecondi rilevati automaticamente, mostrati nel tuo fuso orario e in UTC, con il timestamp attuale in tempo reale.

1.009 visualizzazioni

Timestamp Attuale (in tempo reale)

Come Funziona

Un timestamp Unix conta i secondi interi trascorsi da 00:00:00 UTC del 1° gennaio 1970 — un punto di riferimento fisso chiamato epoch. Il numero 1.784.000.000 cade a luglio 2026; ogni secondo trascorso dal 1970 ha il proprio intero univoco, senza alcuna nozione di fuso orario, mese di calendario o ora legale incorporata. Questo è esattamente il motivo per cui database, API e file di log memorizzano il tempo in questo modo: due server agli antipodi del pianeta calcolano lo stesso timestamp per lo stesso istante, e ordinare i timestamp numericamente equivale a ordinarli cronologicamente — senza bisogno di alcuna logica di parsing delle date.

Convertire un timestamp in una data leggibile significa interpretare quell'intero rispetto a un fuso orario specifico: l'istante sottostante non cambia, cambia solo il modo in cui viene visualizzato. Questo strumento mostra fianco a fianco sia il tuo fuso orario locale sia l'UTC, così un disallineamento è facile da individuare — ad esempio, il timestamp 1784000000 si legge come 2026-07-13 22:13:20 UTC, che diventa 2026-07-14 01:13:20 in UTC+3. Nella direzione opposta — da data leggibile a timestamp — vale la stessa logica al contrario: lo strumento prende i campi data che inserisci, li considera appartenenti al fuso orario selezionato, e calcola l'intero epoch equivalente. Secondi e millisecondi vengono rilevati automaticamente in base al numero di cifre, quindi incollare l'uno o l'altro formato funziona senza bisogno di configurazione.

Cosa Dovresti Sapere

Un classico intero con segno a 32 bit può contare solo fino a 2.147.483.647 secondi dopo l'epoch, un valore raggiunto alle 03:14:07 UTC del 19 gennaio 2038 — il cosiddetto "problema dell'anno 2038." I sistemi che memorizzano ancora i timestamp a 32 bit si avvolgeranno a un numero negativo in quell'istante, per certi versi simile al bug Y2K. I moderni sistemi a 64 bit memorizzano lo stesso valore in un intero molto più grande e restano validi per circa 292 miliardi di anni, quindi database, sistemi operativi e linguaggi contemporanei non ne sono interessati. Anche i timestamp negativi sono validi — codificano semplicemente date precedenti al 1° gennaio 1970, contando all'indietro. Un'altra sottigliezza da conoscere: un secondo intercalare viene occasionalmente inserito nell'UTC per mantenerlo allineato con la rotazione terrestre, ma lo standard del timestamp Unix ignora completamente i secondi intercalari, trattando ogni giorno come esattamente 86.400 secondi — il che mantiene semplice l'aritmetica dei timestamp, al costo di non essere astronomicamente esatto.

I timestamp Unix compaiono costantemente nello sviluppo quotidiano: i JSON Web Token codificano la loro scadenza come claim exp in secondi epoch, le intestazioni di cache HTTP e i cookie spesso impostano la scadenza allo stesso modo, e i sistemi di scheduling confrontano l'epoch corrente con un valore target per decidere quando attivarsi. Poiché il formato è semplicemente un intero, l'aritmetica delle date su di esso è banale: aggiungere 86.400 a un timestamp significa sempre esattamente un giorno dopo in UTC, indipendentemente dal mese o dall'anno bisestile in cui cade — cosa che l'aritmetica sulle date di calendario rende molto più soggetta a errori. Questo è anche il motivo per cui quasi ogni linguaggio di programmazione espone una funzione semplice per leggere "adesso" come timestamp — time() di PHP, Date.now() di JavaScript, time.time() di Python — e perché confrontare due timestamp come semplici numeri basta a sapere quale evento è avvenuto per primo, indipendentemente da dove nel mondo ciascuno sia avvenuto.

Domande Frequenti

Perché il mio timestamp sembra sfasato di 3 ore?

I timestamp sono UTC per definizione; lo scarto compare solo in fase di visualizzazione. Confronta la riga UTC qui con la tua API — se coincidono, i dati sono corretti e cambia solo la resa locale.

Secondi o millisecondi — quale usa il mio sistema?

Conta le cifre: 10 cifre = secondi (fino al 2286), 13 = millisecondi. Gli strumenti Unix e la time() di PHP usano i secondi; Date.now() di JavaScript e Java usano i millisecondi.

Cosa succede esattamente al limite dell'"anno 2038"?

I sistemi che memorizzano un timestamp come intero con segno a 32 bit non possono contare oltre 2.147.483.647 — un valore raggiunto alle 03:14:07 UTC del 19 gennaio 2038. Un secondo dopo il valore va in overflow e si avvolge a un grande numero negativo, che il software in genere interpreta erroneamente come una data del 1901. I sistemi a 64 bit memorizzano lo stesso intero con un margine molto più ampio e non sono interessati.

Perché i timestamp ignorano i secondi intercalari?

Lo standard del timestamp Unix definisce ogni giorno come esattamente 86.400 secondi, così può convertire tra secondi e date di calendario con un'aritmetica semplice. L'UTC reale inserisce occasionalmente un secondo intercalare per restare allineato con la rotazione leggermente irregolare della Terra, ma quel secondo extra non è rappresentato nel timestamp — viene appianato, il che mantiene prevedibile la matematica dei timestamp al costo di una deriva astronomica di una frazione di secondo.

Un timestamp Unix può essere negativo?

Sì. I valori negativi contano semplicemente i secondi all'indietro dall'epoch, quindi -86400 rappresenta il 31 dicembre 1969 00:00:00 UTC. Non tutti i sistemi accettano timestamp negativi, ma il formato stesso supporta qualsiasi data precedente al 1970 senza bisogno di trattamenti speciali.

Commenti

Ancora nessun commento — scrivi il primo!

Strumenti Simili