Você tem uma data, hora, ou ambos, e precisa convertê-los em segundos-época

Use a função DateDiff () para fazer a conversão. Se estiver convertendo a hora local, primeiro você precisa converter a data/hora para GMT (Greenwich Mean Time), utilizando DateConvert ()

Se você já trabalhou em um sistema Unix / Linux antes, ou com outras linguagens de desenvolvimento, como Perl, Java, JavaScript ou até mesmo, você já estiver familiarizado com o conceito de tempo Época . No mundo * nix, a época é definida como Jaunary 1, 1970 00:00 (meia-noite) GMT. Esta data / hora é utilizada como ponto de partida para todos os cálculos de data e hora. Ao converter todas as datas a partir da Época em segundos, torna-se fácil de fazer coisas assim como comparações, adição ou subtração de datas. 

ColdFusion não usa nativamente a época para cálculos de data e hora. No entanto, podeem haver ocasiões onde você tenha que converter um valor de data / hora para segundos-época para uso em outro ambiente. 

Para converter um objeto  ColdFusion data/hora para segundos-época, você pode usar a função DateDiff () para calcular a diferença em segundos entre a Era e a data / hora que você deseja converter. Se a data que você deseja converter para segundos-época não está no GMT (também chamado de UTC ou Tempo Universal Coordenado), você precisa converter a Época para a hora local, ou converter a sua hora local para GMT. Isso é feito usando DateConvert ().

<cfset thedate = createdatetime(2002,12,31,19,0,0)>
<cfoutput>
#TheDate# (local)<br>
Segundos-época (converte Época para hora local): #DateDiff("s", DateConvert("utc2Local", "January 1 1970 00:00"), TheDate)#<br>
Segundos-época (converte hora local apra UTC): #DateDiff("s", "January 1 1970 00:00", DateConvert("Local2utc", TheDate))#
</cfoutput>

A execução deste código produz esta saída:

{ts '2002-12-31 19:00:00'} (local)

Segundos-época (converte Época para hora local) 1041379200
Segundos-época (converte hora local apra UTC): 1041379200

by Rob Brooks-Bilson

0 responses to “Você tem uma data, hora, ou ambos, e precisa convertê-los em segundos-época”