[英]Is PHP detecting a wrong timezone for Berlin?
代碼塊應該能夠自己說話。 時區Europe/Berlin
被檢測為+02:00
但行為類似於+01:00
。 當我專門使用+02:00
作為時區時,它按預期工作。 誰能向我解釋這里發生了什么?
>>> $timezone = new DateTimeZone('Europe/Berlin')
=> DateTimeZone {#2356
timezone: Europe/Berlin (+02:00),
}
>>> $timestamp = DateTime::createFromFormat('Y-m-d\TH:i:s.uO', '2020-02-29T07:30:00.000+0100')
=> DateTime @1582957800 {#2349
date: 2020-02-29 07:30:00.0 +01:00,
}
>>> $timestamp->setTimezone($timezone)
=> DateTime @1582957800 {#2349
date: 2020-02-29 07:30:00.0 Europe/Berlin (+01:00),
}
>>> $timezone = new DateTimeZone('+02:00')
=> DateTimeZone {#2371
timezone: +02:00,
}
>>> $timestamp = DateTime::createFromFormat('Y-m-d\TH:i:s.uO', '2020-02-29T07:30:00.000+0100')
=> DateTime @1582957800 {#2364
date: 2020-02-29 07:30:00.0 +01:00,
}
>>> $timestamp->setTimezone($timezone)
=> DateTime @1582957800 {#2364
date: 2020-02-29 08:30:00.0 +02:00,
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.