Web e codificação · 5 min de leitura
Conversor de carimbo de data/hora: época sem suposições
O tempo Unix é o número de segundos desde 1970-01-01T00:00:00 UTC - um único número inteiro que todo sistema entende e quase todo desenvolvedor interpretou mal pelo menos uma vez. Um conversor de carimbo de data/hora transforma esse número inteiro em algo que um ser humano pode verificar e verificar novamente, o que geralmente é a maneira mais rápida de responder à pergunta com a qual toda investigação de log começa: quando isso realmente aconteceu?
Atualizado
Segundos ou milissegundos: o bug que continua acontecendo
Dez dígitos são segundos; treze são milissegundos. Se errar, a data chegará a 1970 ou daqui a milhares de anos – um erro que é instantaneamente reconhecível depois de visto, e é exatamente por isso que vale a pena reconhecê-lo. O `Date.now()` do JavaScript retorna milissegundos, enquanto a maioria das linguagens de servidor e bancos de dados armazenam segundos, portanto, a fronteira entre um navegador e um API é onde o erro geralmente é cometido.
1760000000 → 2025-10-09 09:33:20 UTC (seconds)
1760000000000 → 2025-10-09 09:33:20 UTC (milliseconds)
UTC é a verdade; a hora local é uma escolha de apresentação
Um valor de época não é ambíguo porque é UTC por definição. A confusão aparece quando você o exibe: o mesmo instante é um horário diferente em cada fuso horário, e um ticket de suporte que diz “aconteceu às 15h” só é útil com um fuso horário anexado. Armazene e transmita a época ou ISO 8601 UTC, converta para a hora local para exibição e sempre inclua a zona em qualquer coisa que um ser humano leia.
Onde os carimbos de data/hora aparecem no trabalho real
- Linhas de registro - a maneira mais rápida é converter a coluna de época em datas legíveis antes de você ler o significado.
- API respostas — `created_at`, `expires_at` e cabeçalhos de cache, todos mais úteis depois de convertidos.
- JWT reivindicações — `exp` e `iat` são segundos de época, e é por isso que uma verificação de expiração é uma subtração.
- Linhas do banco de dados – comparar uma época armazenada com a atual é aritmética; compará-lo com a “terça-feira passada” precisa de uma conversão.
Um carimbo de data/hora sem fuso horário é um bug esperando por um leitor. As datas impressas pertencem à ISO 8601 com um deslocamento explícito, como 2025-10-09T09:33:20Z.
A fronteira de 2038
Segundos assinados de 32 bits desde que a época terminou em 19/01/2038. Os sistemas construídos nesse armazenamento – incluindo colunas MySQL mais antigas e plataformas time_t de 32 bits – não podem representar datas posteriores, e o modo de falha é uma volta para 1901, em vez de um erro. Se você estiver projetando algo destinado a sobreviver à próxima década, armazene números inteiros de 64 bits ou um tipo de data nativo agora; a migração só fica mais difícil mais tarde.
Converta nos dois sentidos, no navegador
O conversor de carimbo de data/hora YamlBox aceita segundos ou milissegundos, mostra interpretações UTC e locais lado a lado com a saída ISO 8601 e faz o sentido inverso, de uma data anterior a uma época. Ele é executado inteiramente no lado do cliente, portanto, os carimbos de data e hora dos logs de produção nunca saem da sua máquina.
Conversor de carimbo de data/hora — perguntas frequentes
Por que meu carimbo de data/hora mostra uma data de 1970?
Quase sempre uma incompatibilidade de unidades: milissegundos foram interpretados como segundos ou o valor é zero porque um campo nunca foi preenchido. Multiplique ou divida por 1000 conforme apropriado – a diferença entre dez e treze dígitos é o diagnóstico completo.
Qual é a diferença entre a época e a ISO 8601?
Eles descrevem o mesmo instante. Epoch é um número inteiro em segundos UTC, compacto e perfeito para aritmética e armazenamento; ISO 8601 é uma string legível com deslocamento, melhor para humanos, logs e APIs que devem permanecer legíveis.
Os carimbos de data/hora Unix incluem fusos horários?
Não — um valor de época é sempre UTC. Apenas sua renderização possui fuso horário, e é por isso que a conversão para uma data local requer saber em qual zona o leitor está e por que dois desenvolvedores podem discordar sobre o mesmo carimbo de data e hora, embora ambos estejam corretos.
Ferramentas mencionadas nesta postagem
Mais artigos para ler
6 min de leitura
JWT decodificador: o que está dentro de um token e o que não
Use um decodificador JWT para inspecionar o cabeçalho, a carga útil e a expiração de um token — e entenda por que a decodificação não está sendo verificada, com as verificações de declaração por trás da maioria dos 401s.
5 min de leitura
URL codificação: quando escapar e quando você está quebrando
URL codificar e decodificar corretamente — caracteres reservados, mais versus %20, encodeURI versus encodeURIComponent e os bugs de codificação dupla por trás de links quebrados.