в моей базе данных у меня есть столбец временной отметки …, который отражает такой формат: 2012-04-02 02:57:54
Однако я хотел бы разделить их на $date
и $time
.
после некоторых исследований с помощью руководства php … Я обнаружил, что date (), date_format () и strtotime () могут помочь мне отделить их … (не уверен, что я прав)
но я не очень уверен, как его кодировать …
В моем php-файле … извлеченная временная метка будет $ row ['DATETIMEAPP'].
Будет
$date= strtotime('dm-Y',$row['DATETIMEAPP']); $time= strtotime('Gi.s',$row['DATETIMEAPP']);
или
$date= date('dm-Y',$row['DATETIMEAPP']);
Работа?
Могу ли я использовать дату (), чтобы получить время?
заранее спасибо
$timestamp = strtotime($row['DATETIMEAPP']);
дает вам временную метку, которую вы можете использовать для форматирования даты:
$date = date('dm-Y', $timestamp); $time = date('Gi.s', $timestamp);
альтернативно
list($date, $time) = explode('|', date('dmY|Gi.s', $timestamp));
Если вы не хотите изменять формат даты и времени из метки времени, вы можете использовать функцию разрыва в php
$timestamp = "2012-04-02 02:57:54" $datetime = explode(" ",$timestamp); $date = $datetime[0]; $time = $datetime[1];
$mydatetime = "2012-04-02 02:57:54"; $datetimearray = explode(" ", $mydatetime); $date = $datetimearray[0]; $time = $datetimearray[1]; $reformatted_date = date('dm-Y',strtotime($date)); $reformatted_time = date('Gi.s',strtotime($time));
$timestamp='2014-11-21 16:38:00'; list($date,$time)=explode(' ',$timestamp);
// просто время
preg_match("/ (\d\d:\d\d):\d\d$/",$timestamp,$match); echo "\n<br>".$match[1];
Работает на меня:
select DATE( FROM_UNIXTIME( columnname ) ) from tablename;
При желании вы можете использовать функцию базы данных для форматирования даты и времени. Например, в запросе MySQL используйте:
SELECT DATE_FORMAT(DATETIMEAPP,'%d-%m-%Y') AS date, DATE_FORMT(DATETIMEAPP,'%H:%i:%s') AS time FROM yourtable
Я думаю, что над базами данных также предусмотрены решения для форматирования даты