我目前正在通过ajax从数据库中获取数据,结果是json。在该结果中,存在来自具有这种格式的数据库的日期时间值,例如, 2013-09-06 07:28:52
当我在这段代码中使用momentjs时:
var waktu = moment(response.waktu, 'HH mm ss');
结果是:
-62167171952000
错误以及如何正确地返回它,仅适用于HH:mm:ss
?
答案 0 :(得分:0)
尝试:
var waktu = moment(response.waktu, "YYYY-MM-DD HH:mm:ss");
格式字符串必须与输入字符串格式匹配。
答案 1 :(得分:0)
您需要格式化日期。使用数据库中的值
可以很容易地在PHP中完成它$date = date('h:m:s', strtotime($row['date']));
答案 2 :(得分:0)
您可以在PHP中使用此功能
$var = '2013-09-06 07:28:52';
$format='h:m:s';
echo formatDate($var,$format);
/**
* @param datetime $date11 date from db
* @param string $format See Date Parameters in Online Documentation
* @link http://www.php.net/manual/en/function.date.php#refsect1-function.date-parameters
* @return string Format Date
*/
function formatDate($date11, $format) {
$date1 = new DateTime($date11);
$date = $date1->format($format); //eg: 'm/d/Y' return 07/31/2012
return $date;
}
答案 3 :(得分:0)
这是另一种选择:
$timestamp = strtotime('2013-09-06 07:28:52');
echo date("h:m:s", $timestamp); //outputs 07:09:52
答案 4 :(得分:0)
抱歉,我错了。
我错过了解文档。目前,我正在使用String + Format:
var waktu = moment(response.waktu, 'HH mm ss');
然后我重新阅读了Display format部分,并尝试了以下代码:
var waktu = moment(response.waktu).format('HH : mm : ss');
因此,要格式化给定的日期时间,我们必须使用format()
函数,并且无法直接使用String + Format,因为此处的格式是给定日期时间的格式。
感谢您的所有答案,我真的很感激。案件现已解决。