我正在尝试将以下字符串:2013-09-06 10:30pm GMT+1
转换为PHP DateTime
对象。在此过程中,它还必须将其转换为UTC。我尝试了下面的代码,但显然这是不正确的,但我真的不知道从这里开始该怎么办:
$datetime = DateTime::createFromFormat('YY-MM-DD HH-IIm tzcorrection', '2013-09-06 10:30pm GMT+1', new DateTimeZone('UTC'));
我知道有很多类似的话题。但它们不包括这种格式和转换为UTC。由于转换为UTC,我认为不可能使用strtotime()
。
这会很好地工作:-
$date = new 'DateTime('2013-09-06 10:30pm GMT+1');
$date->setTimezone(new 'DateTimeZone('UTC'));
var_dump($date);
看到它在工作;
另请参阅http://php.net/date有关日期字符串格式的详细信息。
日期字符串的一个问题是"GMT+1"部分,没有有效的日期字符串(希望其他人能帮忙),所以在这种情况下很难使''DateTime::createFromFormat()工作。然而,DateTime构造函数在留给自己的设备时似乎能很好地处理它。