PHP: armazenando datas em formato Unix
Eu prefiro trabalhar com datas armazenadas no banco de dados em formato UNIX. Explico o porquę:
- Fica mais fácil fazer um search quando a data é um número inteiro, sem barras e dois pontos
- Atualmente trabalhamos para o mundo todo e como existem diferentes formas de se apresentar uma data, podemos recorrer ŕ funçăo date() do PHP para formatar a data da forma que quisermos
Meu script para transformar uma data a partir do formato brasileiro (dd/mm/yyyy) é o seguinte:
1 2 3 4 |
$dlist=explode('/',date("d/m/Y")); // Pegamos a data de hoje com date("d/m/Y") e a explodimos, transformando num array $tlist=explode(':',date('H:i:s',time())); // Pegamos a hora atual com date('H:i:s',time())) e a explodimos, transformando num array $datahora=mktime($tlist[0],$tlist[1],$tlist[2],$dlist[1],$dlist[0],$dlist[2]); // Transformamos em formato UNIX utilizando os dados de ambos os arrays echo $datahora; |
Perceba que estou criando uma nova data e năo transformando uma data recebida de um formulário. Se assim fosse, o script seria:
1 2 3 4 |
$dlist=explode('/',$_POST['nomedomeucampodedata']); // Pegamos a data que veio do formulário e a explodimos, transformando num array $tlist=explode(':',date('H:i:s',time())); // Pegamos a hora atual com date('H:i:s',time())) e a explodimos, transformando num array $datahora=mktime($tlist[0],$tlist[1],$tlist[2],$dlist[1],$dlist[0],$dlist[2]); // Transformamos em formato UNIX utilizando os dados de ambos os arrays echo $datahora; |
O resultado terá o seguinte formato: 1177591329.
Na hora de utilizar esse dado, recorremos ŕ funçăo date() do PHP. Alguns exemplos:
1 2 3 4 5 6 |
echo date("d/m","1177591329"); // O resultado será 26/04 echo date("d/m/Y","1177591329"); // O resultado será 26/04/2007 echo date("M d, Y","1177591329"); // O resultado será Apr 26, 2007 (formato americano) echo date("m/y","1177591329"); // O resultado será 04/07 echo date("M/Y","1177591329"); // O resultado será Apr/2007 echo date("M/Y H:i:s","1177591329"); // O resultado será Apr/2007 09:42:09 |
Percebeu a versatilidade? Uma vez tendo a data em formato UNIX, é possível mostrar o resultado de diversas maneiras.
Se gostou da matéria deixe um comentário or subscribe to the feed and get future articles delivered to your feed reader.





Comentários
Nenhum comentário ainda.
Deixe um comentário