我希望有一个类似日期的新日期()。来自javascript的ISOString()
输出为2018-06-11T08:30:25.597Z
我试过
(new \DateTime('now',new \DateTimeZone("UTC")))->format(\DateTime::ISO8601) // 2018-06-12T08:21:13+0000
$t = date('c', strtotime('2010-12-30 23:21:46')); //2010-12-30T23:21:46+01:00
$t2 = date(DATE_ISO8601, strtotime('2010-12-30 23:21:46')); //2010-12-30T23:21:46+01:00
$datetime = new \DateTime('2010-12-30 23:21:46');
$t3 = $datetime->format(\DateTime::ATOM); // 2010-12-30T23:21:46+01:00
我想结合
ISO 8601日期和时间以UTC结合(YYYY-MM-DDTHH:MM:S +时区偏移| Z,即2018-04-18T11:02:05.261Z)
在Javascript中,我可以使用
格式new Date().toISOString() //2018-06-12T08:24:49.321Z
答案 0 :(得分:0)
您的首次尝试几乎就是您所需要的,只需将\DateTime::ISO8601
更改为\DateTime::ATOM
。
从PHP手册:
日期时间:: ISO8601 DATE_ISO8601
ISO-8601(例如:2005-08-15T15:52:01 + 0000)
注意:此格式与ISO-8601不兼容,但出于向后兼容的原因,这种格式保留了这种格式。使用DateTime :: ATOM或DATE_ATOM来代替与ISO-8601的兼容性。