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

发布于 2024-11-29 19:51:28 字数 467 浏览 2 评论 0原文

我有以下格式的日期: 2011-08-16T23:20:30.000Z

我试图做这样的事情:

$dt = DateTime::createFromFormat('Ymd\TH:i:su',$issue->updated);

我有两个问题:

  1. 我知道 Z 代表 UTC,但是时区占位符 在 PHP 文档 中与 Z 不匹配
  2. 我如何转义 T 但不是H? 日期的 PHP 文档 中的转义注释使其看起来像斜杠将转义所有字符,直到出现空格。

I have dates coming over in this format:
2011-08-16T23:20:30.000Z

I am trying to do something like this:

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

I have two problems:

  1. I know Z is for UTC, but the timezone placeholders in the PHP docs don't match Z
  2. How do I escape just the T but not the H? The escape comment in the PHP doc for date makes it seem like a slash will escape all characters until a space.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

白芷 2024-12-06 19:51:28

这看起来像 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"
}

That looks like an ISO 8601 format and you can pass it straight to the constructor, e.g:

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"
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文