如何在PHP中编写2011-08-16T23:20:30.000Z的日期格式?

时间:2011-08-16 23:43:01

标签: php date date-format

我有这样的日期: 2011-08-16T23:20:30.000Z

我正在尝试做这样的事情:

$dt = DateTime::createFromFormat('Y-m-d\TH:i:s.u',$issue->updated);

我有两个问题:

  1. 我知道Z代表UTC,但时区占位符in the PHP docs与Z
  2. 不匹配
  3. 我如何逃避T而不是H? PHP doc for date中的转义注释使得它看起来像一个斜线,它将逃避所有角色直到空格。

1 个答案:

答案 0 :(得分:4)

看起来像ISO 8601格式,您可以将其直接传递给构造函数,例如:

var_dump(new DateTime("2011-08-16T23:20:30.000Z"));

...

object(DateTime)#1 (3) {
  ["date"]=>
  string(19) "2011-08-16 23:20:30"
  ["timezone_type"]=>
  int(2)
  ["timezone"]=>
  string(1) "Z"
}