DateTimeZone 适用于 PHP v7.0 但不适用于 v5.4
DateTimeZone works with PHP v7.0 but not with v5.4
从一个时区转换到另一个时区时,以下代码在 PHP v7.0(dev) 中运行良好,但在 PHP v5.4 中执行时会抛出错误。我怎样才能让它兼容?
//---CODE------------------------------------------------------------
$time_object = new DateTime('2011-04-19 17:45', new DateTimeZone('+0530'));
$time_object->setTimezone(new DateTimeZone('Europe/London'));
$LondonDateTime = $time_object->format('Y-m-d H:i:s');
echo $LondonDateTime;
PHP v5.4
中的错误
//---ERROR WITH PHP v5.4--------------------------------------
DateTimeZone::__construct(): Unknown or bad timezone (+0530)
已降至 this PHP bug, which was fixed in PHP 5.5.10。您应该能够使用这个(诚然非常难看)解决方法:
DateTime::createFromFormat('O', '+05:30')->getTimezone();
从一个时区转换到另一个时区时,以下代码在 PHP v7.0(dev) 中运行良好,但在 PHP v5.4 中执行时会抛出错误。我怎样才能让它兼容?
//---CODE------------------------------------------------------------
$time_object = new DateTime('2011-04-19 17:45', new DateTimeZone('+0530'));
$time_object->setTimezone(new DateTimeZone('Europe/London'));
$LondonDateTime = $time_object->format('Y-m-d H:i:s');
echo $LondonDateTime;
PHP v5.4
中的错误//---ERROR WITH PHP v5.4--------------------------------------
DateTimeZone::__construct(): Unknown or bad timezone (+0530)
已降至 this PHP bug, which was fixed in PHP 5.5.10。您应该能够使用这个(诚然非常难看)解决方法:
DateTime::createFromFormat('O', '+05:30')->getTimezone();