date
функцията очаква временна марка UNIX
като негов втори параметър - което означава, че трябва да преобразувате датата, която получавате от DB в UNIX времеви печат, което може да се направи с помощта на strtotime
:
$db = '2010-02-20 13:14:09';
$timestamp = strtotime($db);
echo date("m-d-Y", $timestamp);
И ще получите :
02-20-2010
Предавахте '2010-02-20 13:14:09'
низ към date
функция; този низ не е валиден времеви печат на UNIX.
'12-31-69
' вероятно е 1970-01-01
, във вашия локал; и 1970-01-01
е епохата -- датата, която съответства на 0 UNIX Timestamp.