簡體   English   中英

將“ 2013-09-06 10:30 pm GMT + 1”字符串轉換為UTC中的PHP DateTIme對象

[英]Converting “2013-09-06 10:30pm GMT+1” string to PHP DateTIme object in UTC

我正在嘗試將以下字符串轉換為: 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構造函數放在自己的設備上似乎可以很好地應對它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM