Получение времени и даты из метки времени с помощью php


В моей базе данных у меня есть столбец с отметкой времени...который отражает такой формат, как этот: 2012-04-02 02:57:54

Однако я хотел бы разделить их на $date и $time.

После некоторых исследований в руководстве по php...Я обнаружил, что date(), date_format() и strtotime() могут помочь мне разделить их...(не уверен, что я прав)

Но я не очень уверен в том, как это закодировать...

В моем php-файле... извлеченная временная метка будет $row['DATETIMEAPP'].

Будет

$date= strtotime('d-m-Y',$row['DATETIMEAPP']);
$time= strtotime('Gi.s',$row['DATETIMEAPP']);

Или

$date= date('d-m-Y',$row['DATETIMEAPP']);

Работа?

Могу ли я использовать date(), чтобы также узнать время??

Заранее благодарю

Author: Hubert, 2012-04-02

7 answers

$timestamp = strtotime($row['DATETIMEAPP']);

Дает вам метку времени, которую затем вы можете использовать для форматирования даты:

$date = date('d-m-Y', $timestamp);
$time = date('Gi.s', $timestamp);

Альтернативно

list($date, $time) = explode('|', date('d-m-Y|Gi.s', $timestamp));
 51
Author: Andreas Wong, 2012-04-02 03:36:42

Если вы не хотите изменять формат даты и времени по метке времени, вы можете использовать функцию explode в php

$timestamp = "2012-04-02 02:57:54"
$datetime = explode(" ",$timestamp);
$date = $datetime[0];
$time = $datetime[1];
 7
Author: Ankit Bansal, 2014-10-30 14:29:52
$mydatetime = "2012-04-02 02:57:54";
$datetimearray = explode(" ", $mydatetime);
$date = $datetimearray[0];
$time = $datetimearray[1];
$reformatted_date = date('d-m-Y',strtotime($date));
$reformatted_time = date('Gi.s',strtotime($time));
 2
Author: Robert Lattery, 2014-08-11 22:28:10
$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];
 1
Author: zzapper, 2014-11-21 16:47:11

Работает для меня:

select DATE( FROM_UNIXTIME( columnname ) ) from tablename;
 0
Author: Ivan Laharnar mink.si, 2016-07-21 12:38:02

Вы можете попробовать это:

Для даты:

$date = new DateTime($from_date);
$date = $date->format('d-m-Y');

Для времени:

$time = new DateTime($from_date);
$time = $time->format('H:i:s');
 0
Author: Tushar Nitave, 2018-03-03 12:03:37

При необходимости вы можете использовать функцию базы данных для форматирования даты/времени. Например, в запросе MySQL используйте:

SELECT DATE_FORMAT(DATETIMEAPP,'%d-%m-%Y') AS date, DATE_FORMT(DATETIMEAPP,'%H:%i:%s') AS time FROM yourtable

Я думаю, что over databases также предоставляет решения для форматирования даты

 -1
Author: Slava Rozhnev, 2014-03-15 10:11:57