0

我目前正在通过 ajax 从数据库中获取数据,结果为 json。在该结果中,数据库中有一个具有这种格式的日期时间值,例如2013-09-06 07:28:52

当我在这段代码中使用 momentjs 时:

var waktu = moment(response.waktu, 'HH mm ss');

结果是:

-62167171952000

出了什么问题以及如何正确返回它,只是为了HH:mm:ss

谢谢你。

4

5 回答 5

0

这是一个替代方案:

$timestamp = strtotime('2013-09-06 07:28:52');
echo date("h:m:s", $timestamp); //outputs 07:09:52
于 2013-09-06T02:54:11.880 回答
0

尝试:

var waktu = moment(response.waktu, "YYYY-MM-DD HH:mm:ss");

格式字符串必须与输入字符串格式匹配。

于 2013-09-06T02:48:39.483 回答
0

您需要格式化日期。使用数据库中的值很容易在 PHP 中执行此操作

$date = date('h:m:s', strtotime($row['date']));

http://php.net/manual/en/function.date.php

于 2013-09-06T02:49:03.507 回答
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;
}
于 2013-09-06T02:52:20.713 回答
0

对不起,我错了。

我错过了理解文档。目前,我正在使用String + Format,如下所示:

var waktu = moment(response.waktu, 'HH mm ss');

然后我重新阅读了显示格式部分,并尝试了以下代码:

var waktu = moment(response.waktu).format('HH : mm : ss');

所以,要格式化给定的日期时间,我们必须使用format()函数,不能直接使用String + Format,因为这里的格式是给定日期时间的格式。

谢谢大家的回答,我真的很感激。该案现已解决。

于 2013-09-06T04:25:40.650 回答