获取d3以根据时间戳显示正确的日期

时间:2014-12-29 22:28:21

标签: javascript php datetime d3.js

我正在使用d3创建一个包含数据库数据的图表,但是没有正确显示日期,而只显示01/17/1970。

我以这种格式从数据库中获取日期:

YYYY-MM-DD

并将其转换为时间戳:

strtotime($t)

这导致时间戳如:

1417215600, 1417302000, 1417388400

但是图表只显示了上面提到的unix second null。

这就是x轴的形成方式:

 chart.xAxis
           .tickFormat(function(d) { return d3.time.format('%x')(new Date(d)) });

我住在意大利,我的应用程序中的默认时区是CET,所以我尝试设置

date_default_timezone_set('UTC');

但没有成功。

有人可以建议吗?

1 个答案:

答案 0 :(得分:2)

通过在每个时间戳添加.000来解决它,javascript需要13个字符时间戳而不是php的10个字符时间戳:

strtotime($t).'000'

为我的图表

返回正确的输出