El date
la función espera una marca de tiempo de UNIX
como su segundo parámetro, lo que significa que debe convertir la fecha que obtiene de la base de datos a una marca de tiempo UNIX, lo que se puede hacer usando strtotime
:
$db = '2010-02-20 13:14:09';
$timestamp = strtotime($db);
echo date("m-d-Y", $timestamp);
Y obtendrás:
02-20-2010
Estabas pasando el '2010-02-20 13:14:09'
cadena a la date
función; esa cadena no es una marca de tiempo UNIX válida.
'12-31-69
' es probablemente 1970-01-01
, en su localidad; y 1970-01-01
es la época, la fecha que corresponde a la marca de tiempo 0 UNIX.