A
date
a função espera um timestamp UNIX
como seu segundo parâmetro -- o que significa que você precisa converter a data obtida do banco de dados para um timestamp UNIX, o que pode ser feito usando strtotime
:$db = '2010-02-20 13:14:09';
$timestamp = strtotime($db);
echo date("m-d-Y", $timestamp);
E você obterá:
02-20-2010
Você estava passando o
'2010-02-20 13:14:09'
string para a date
função; essa string não é um carimbo de data/hora UNIX válido. '12-31-69
' é provavelmente 1970-01-01
, em sua localidade; e 1970-01-01
é a Epoch -- a data que corresponde ao Timestamp UNIX 0.