Date.UTC创建错误的日期

时间:2013-06-03 11:28:37

标签: javascript date graph rgraph

我为动态创建的图形编写了一些代码,并使用Date.UTC()创建格式化日期。

它可以在几个月内完全正常,但是我遇到了跨越几个月的问题,即2月到3月创建了2月29日,30日和31日,现在我发现错误使得5月31日6月1日.... ...

我试图找到答案,但还没有运气。是否有一个我忽略的简单修复或是否有修复?

s.Set('chart.xmin', Date.UTC(<?php echo $startyear.",".$startmonth.",".$startday.",".$starthour.",".$startminute; ?>));            
    s.Set('chart.xmax', Date.UTC(<?php echo $finishyear.",".$finishmonth.",".$finishday.",".$finishhour.",".$finishminute; ?>));

干杯

詹姆斯

1 个答案:

答案 0 :(得分:0)

JavaScript月份为0-11,而PHP为1-12。因此,当您在PHP页面中生成JavaScript代码时,您需要从月中减去1。

但是通过时间戳会不会更容易?例如:

new Date(<?php echo date_timestamp_get($yourdate) * 1000 ?>)

* 1000就在那里,因为PHP的时间戳以秒为单位,JavaScript以毫秒为单位。但他们都使用相同的参考日期 - 1/1/1970 UTC时代。

参考PHP date_timestamp_get docs here