DateTimeZoneコンストラクターは地域名のみを受け入れます。
new DateTimeZone('Europe/London');
UTC からのオフセットではありません:
new DateTimeZone('+01:00'); // Unknown or bad timezone (+01:00)
ただし、 DateTime からそのような DateTimeZone を取得することは可能です:
(new DateTime('2012-12-28T00:00:00+01:00'))->getTimezone()->getName(); // +01:00
だから、これは少し奇妙です。オフセットから DateTimeZone を直接取得する方法はありますか?