DateTime 对象的 timezone_type 属性是什么?

Mar*_*rey 4 php datetime json

我想知道这个输出是什么echo json_encode(new \DateTime());意思:

    {
        "date":"2019-04-16 14:43:15.126710",
        "timezone_type":3,
        "timezone":"Europe\/Berlin"
    }
Run Code Online (Sandbox Code Playgroud)

date并且timezone很明显……但这是什么timezone_type?官方文档对我帮助不大。关于DateTime的页面没有提到这样的事情,它只是提到您可以获取/设置 DateTimeZone。关于DateTimeZone的页面也没有帮助。

所以……是什么?PHP 从哪里得到它?它有什么好处?

Mad*_*tel 6

时区可以是DateTime对象中的三种不同类型之一:

  1. UTC 偏移量,例如在 new DateTime("17 July 2013 -0300");

  2. 时区缩写,例如在 new DateTime("17 July 2013 GMT");

  3. 时区标识符,例如 new DateTime( "17 July 2013", new DateTimeZone("Europe/London"));

源链接