我正在創建一個腳本,允許用戶選擇他們自己的時區... 並輸入日期$ time..So用戶輸入的日期/時間必須轉換爲GMT格式,同時存儲到數據庫中。 從數據庫中檢索時,應該再次轉換爲原始格式。 這裏也必須包含DST概念。如何編寫一個函數來獲取不同的時區在php中?
所以這裏日期是它可以是一個字符串或數組(多維數組也) 所以我想這樣的一個變量.....
function ConvertOneTimezoneToAnotherTimezone($time,$currentTimezone,$timezoneRequired)
{
$current_zone = new DateTimeZone($currentTimezone);
//$gmt = new DateTimeZone('GMT');
$date = new DateTime($time, $current_zone);
//$date->setTimezone($gmt);
$date->setTimezone(new DateTimeZone($timezoneRequired));
return $date->format('Y-m-d H:i:s');
// Convert it back to Original timezone
$date->setTimezone($current_zone);
return $date->format('Y-m-d H:i:s');
}
$time='2011-03-29 11:15:00.000';
echo "Current Date/Time is=".ConvertOneTimezoneToAnotherTimezone($time,'Asia/Kolkata','America/New_York');
但在這裏,我只能轉換爲不同的時區,但我想它轉換日期/時間,也同時檢索給原始格式...... 請人幫我一個單一的功能......
你能提供你的預期產出嗎?您在第一個setTimeZone之後從函數返回,所以您將永遠不會到達第二個。你是說你想要從$ date-> format()調用中獲取值嗎? – 2011-03-29 06:15:15
雅我希望輸出作爲轉換日期/時間= 2011-12-28 07:22:00 原始日期/時間2011-12-28 17:52:00。這個日期可以在一個數組或它也可以是一個串。 – 0001 2011-03-29 06:18:01