2011-04-08 84 views
1

我想將php中的日期從UTC格式轉換爲UTC + 5。 如果是從格林尼治標準時間GMT + 5,我只想做:php時區「等/ GMT + 5」相當於UTC(「Etc/UTC + 5」?)

$date_str = '2011-04-01 12:00:00'; //ex:from database 

$date = new DateTime($date_str,new DateTimeZone('GMT')); 
$date->setTimezone(new DateTimeZone('Etc/GMT+5')); 

echo $date->format('Y-m-d H:i:s'); //testing 

在PHP中時區列表here,不過是沒有 'ETC/UTC + 5' 等同。

有沒有辦法在UTC中將UTC轉換爲UTC + 5?

還是會讓格林威治時間的例子相同的結果?

將'UTC'轉換爲'Etc/GMT + 5'會不對?

注:

  • 我實際使用日期(從我的數據庫)是UTC格式。
  • 對於UTC和GMT時間格式之間的差異,我仍然有點困惑。

回答

1

作爲民用時區,GMT和UTC現在被認爲是等效的。嚴格地說,他們不是,但在這種情況下,你可能很可能安全地假裝他們是。

+0

它有助於知道它不會有任何問題,但我仍然想要完全確定。從'UTC' - >'GMT' - >'Etc/GMT + 5'的轉換是否可以做到這一點? – Seeker 2011-04-11 10:01:51

+0

@Seeker:那還是給你GMT + 5。它和「UTC」 - >「Etc/GMT + 5」一樣。中間步驟是多餘的。 – 2011-04-11 10:37:20

+0

好的信息:) – Seeker 2011-04-11 10:58:36

2

格林尼治標準時間是舊的和破壞,UTC是新的熱點。除此之外,它們相當於考慮可互換性。

+0

Ty爲你的答案,但如果我真的想做出完美的轉換,你知道在php中使用'我支持的時區列表 - 其他',我把鏈接的方式做到這一點嗎? – Seeker 2011-04-11 10:08:31