Em PHP, você poderia:
Mais ou menos assim, eu diria:
$timestamp = strtotime($date_from_db);
echo date('d/m/Y', $timestamp);
Mas isso só funcionará para datas entre 1970 e 2038, como timestamps são armazenados como inteiros de 32 bits, contando a partir de 1970-01-01.
No MySQL, suponho que o
date_format
função faria o truque.Por exemplo:
mysql> select date_format(curdate(), '%d/%m/%Y');
+------------------------------------+
| date_format(curdate(), '%d/%m/%Y') |
+------------------------------------+
| 19/03/2010 |
+------------------------------------+
1 row in set (0.03 sec)
E, por uma questão de completude, outra solução, em PHP, que não sofre com a limitação de 1970-2038 seria usar o
DateTime
classe e, especialmente:DateTime::__construct
para analisar a data retornada pelo banco de dadosDateTime::format
para formatar a data para o formato que desejar.
Por exemplo, esta parte do código:
$date = new DateTime('2010-03-19');
echo $date->format('d/m/Y');
obteria esta saída:
19/03/2010