2017-08-17 136 views
0

例如,我有一个对象,它在php中有DateTime对象。如何通过json和树枝将DateTime对象传递给javascript日期对象

in php

array_push($events, 
    array(
     "date" => new \DateTime('2017-08-01'), 
     "description" => "This is description of an event" 
    )); 
    array_push($events, 
     array(
     "date" => new \DateTime('2017-07-19'), 
     "description" => "Some longer\ntext can also\n be added" 
     )); 

解析这样的对象。以这种方式

in twig

{% for var, value in events %} 
var {{var}} = {{ value|json_encode|raw }}; 
{% endfor %} 

output

var 0 = {"date":{"date":"2017-08-01 00:00:00.000000","timezone_type":3,"timezone":"Asia\/Tokyo"},"description":"This is description of an event"}; 
var 1 = {"date":{"date":"2017-07-19 00:00:00.000000","timezone_type":3,"timezone":"Asia\/Tokyo"},"description":"Some longer\ntext can also\n be added"}; 

textboolean作品很好,但不能转换日期时间为JavaScript对象。

有没有什么好的解决方案?

回答

1

您应该能够使用从JSON你的时间字符串实例像Date对象,因此:

var d = new Date('2017-08-01 00:00:00.000000'); 

然后可以使用像这样,例如:

alert(d.toString()); //Tue Aug 01 2017 00:00:00 GMT+0100 (GMT Summer Time) 
+0

感谢我发现那Date类的构造函数可以带多种字符串。 – whitebear