Timestamps Unix: Tempo Epoch Guia Completo

Entenda timestamps Unix, tempo epoch, conversão de fuso horário e como trabalhar com datas em APIs e bancos de dados.

5 min de leitura Tempo · APIs · Bancos de dados 6 seções + FAQ

Um timestamp Unix é o número de segundos (ou milissegundos) decorridos desde 1 de janeiro de 1970, 00:00:00 UTC. É a forma universal de representar um momento no tempo.

Timestamps eliminam a ambiguidade de fuso horário do armazenamento de dados. Quando um servidor armazena 1704067200, não há ambiguidade.

O que é um timestamp Unix

Um timestamp Unix conta segundos desde o epoch Unix. É um único inteiro — positivo para datas após 1970, negativo para datas anteriores.

Ferramenta gratuita Conversor de Timestamp Converta timestamps Unix para datas e vice-versa

O epoch Unix (1 de janeiro de 1970)

O epoch — 1 de janeiro de 1970, 00:00:00 UTC — foi escolhido pelos engenheiros Unix como um ponto de partida conveniente.

Milissegundos vs segundos

Timestamps Unix originais contam segundos. Date.now() do JavaScript retorna milissegundos. Sempre verifique a documentação da API.

Ferramenta gratuita Conversor de Unidades Converta comprimento, massa, temperatura, área, volume e mais

Considerações de fuso horário

Timestamps Unix são inerentemente UTC. Fusos horários só entram em jogo ao exibir o timestamp como uma data legível.

Timestamps em APIs e bancos de dados

APIs tipicamente retornam timestamps em um de quatro formatos: timestamp Unix em segundos, milissegundos, string ISO 8601 ou string RFC 2822.

Conversão para datas legíveis

Em JavaScript: new Date(timestamp * 1000).toISOString(). Em Python: datetime.utcfromtimestamp(timestamp). Em SQL: FROM_UNIXTIME(timestamp).

Ferramenta gratuita Formatador e Validador JSON Formate, valide e minifique dados JSON

Perguntas Frequentes

O que é o epoch Unix? +
O epoch Unix é 1 de janeiro de 1970, 00:00:00 UTC — o ponto de referência a partir do qual todos os timestamps Unix são contados.
Qual é o timestamp Unix atual? +
Timestamps Unix crescem 1 por segundo. Em JavaScript: Math.floor(Date.now() / 1000). Em Python: int(time.time()).
O que é o problema do ano 2038? +
Sistemas que armazenam timestamps Unix como inteiros com sinal de 32 bits vão transbordar em 19 de janeiro de 2038. A solução é usar inteiros de 64 bits.
Timestamps Unix são afetados por segundos bissextos? +
Oficialmente não. O tempo Unix ignora segundos bissextos. Um dia sempre tem exatamente 86400 segundos.
Qual é a diferença entre UTC e GMT? +
Para fins práticos, UTC e GMT são idênticos. GMT é um fuso horário; UTC é um padrão de tempo internacional.
Como converto um timestamp para um fuso horário específico? +
Converta primeiro o timestamp UTC para um objeto Date, depois formate-o no fuso horário alvo.
O que é uma string de data ISO 8601? +
ISO 8601 é um padrão internacional de formato de data: 2024-01-01T00:00:00Z. O sufixo Z significa UTC.