Когда я вытаскиваю дату из db, она возвращается так:
2009-10-14T19: 00: 00
Я хочу отформатировать его двумя разными способами …
Первый: F d, Y Второй h: m (12-часовой формат)
Все, что я пытаюсь вернуть в декабре 1969 года … Помогите ?! Я так смущен …
Обычно код просто:
echo date('F d, Y h:mA', strtotime('2009-10-14 19:00:00'));
Обратите внимание, что если strtotime()
не может определить дату, она возвращает время как 1/1/1970 00:00:00 GMT .
Если вы хотите отформатировать его в базе данных (предполагая MySQL):
SELECT DATE_FORMAT(t.column, '%M %D, %Y'), --October 14, 2009 DATE_FORMAT(t.column, '%h:%i %p') --hh:mm am/pm FROM TABLE t
… или если вы хотите сделать преобразование в PHP:
echo date('F d, Y h:mA', strtotime('2009-10-14 19:00:00'));
Справка:
Лучше всего и ясно
$res_tbl ='select create_date from tbl_comments'; while($table =mysql_fetch_array($res_tbl)) { echo date('F d, Y h:mA', strtotime($table['create_date'])); echo "<br>"; }
Вывод:
January 10, 2009 21:12 March 21, 2001 12:04
Простая функция отображения даты:
echo date('mdY H:i:s',strtotime($date_variable));
Вы можете проверить strtotime