如何将PHP日期时间序列化为JavaScript日期时间?
我正在使用将一些PHP对象序列化为JSON。其中包括DateTime对象 我得到的PHP DateTime对象的JSON输出如下:如何将PHP日期时间序列化为JavaScript日期时间?,javascript,php,symfony,datetime,Javascript,Php,Symfony,Datetime,我正在使用将一些PHP对象序列化为JSON。其中包括DateTime对象 我得到的PHP DateTime对象的JSON输出如下: { "lastErrors" : { "warning_count" : 0, "warnings" : [], "error_count" : 0, "errors" : [] }, "timezone" : { "name" : "UTC",
{
"lastErrors" : {
"warning_count" : 0,
"warnings" : [],
"error_count" : 0,
"errors" : []
},
"timezone" : {
"name" : "UTC",
"location" : {
"country_code" : "??",
"latitude" : 0,
"longitude" : 0,
"comments" : ""
}
},
"offset" : 0,
"timestamp" : 1416903372
}
要实际使用此对象,我需要将时间戳转换为JS DateTime对象。此外,当32位timestap在几年内溢出时,这可能会在某些机器上失败
如何使Symfony序列化程序将PHP DateTime对象输出为JavaScript DateTime对象?从UNIX epoch 1970-01-01T00:00:00z开始,时间戳似乎是秒。Javascript使用相同的历元,但以毫秒为单位,因此使用新的Datedate.timestamp*1e3。你没有指出偏移量或单位的符号,所以转换成毫秒,适当地加上或减去它,使时间值为UTC。就像@RobG所说的,如果你在它周围加上{和},它看起来也像一个纯json对象,但我不使用symfony2,所以如果symfony2与json一起工作,请忽略它@RobG我知道我可以将其转换为JS时间戳。但是,我在代码中的不同位置有很多这样的对象,我需要比较它们。我宁愿避免发送所有开销数据,然后在客户端转换它们。@UnskilledFreak我发布的代码片段实际上是一个更大的JSON对象的一部分,我只是忘了加回括号。我现在修好了。