2014-04-30 47 views
0

我正試圖將日期時間轉換爲小時,以便今天的日期和時間與數據庫日期和時間匹配。無法將日期時間轉換爲小時

date_default_timezone_set("Pacific/Fiji"); 
today = date('Y-m-d H:i'); // Returns 2014-05-01 11:01 

$date = DateTime::createFromFormat('Y-m-d h:i', '2014-05-02 11:05'); 
echo $date->format('Y-m-d H:i'); // Returns 2014-05-02 11:05 

我在做什麼錯在此代碼,它的返回2014-05-02 11:05,而它應該返回2014-05-01 23:05

回答

0

您在斐濟時區保存2014-05-02 11:05$date。之後您在斐濟時區顯示日期,因此當然不會更改。

我真的不明白你的問題,但是從你提供我猜的代碼,你可能想要做的是:

$tzFiji = new DateTimeZone('Pacific/Fiji'); 
$tzBerlin = new DateTimeZone('Europe/Berlin'); 
$tzCurrent = new DateTimeZone(date_default_timezone_get()); 

$date = DateTime::createFromFormat('Y-m-d h:i', '2014-05-02 11:05', $tzFiji); 

echo $date->format('Y-m-d H:i'); # date in Fiji's timezone 
$date->setTimezone($tzBerlin); 
echo $date->format('Y-m-d H:i'); # date in Berlin's timezone 
$date->setTimezone($tzCurrent); 
echo $date->format('Y-m-d H:i'); # date in php's currently set timezone 
相關問題