2013-07-15 45 views
0

我在東海岸。當我谷歌什麼時候它是在丹佛,它從我的時區變化比較輸出:PHP設置的默認時區不準確

$SiteSettings = new SiteSettings(); 
$settings = $SiteSettings->getSettings(); 

date_default_timezone_set($settings["data"]["timezone"]); 

echo date_default_timezone_get(), '--', date("Y-m-d g:i:a"),'<br />'; 

的時間爲1小時關閉,但來自數據庫的時區爲美洲/丹佛。這是因爲PHP date函數不準確, 還是因爲Google和PHP日期指向稍微不同的時區?

回答

1

我已經硬編碼America/Denver作爲默認的時區和它的做工精細,例如:

<?php 
date_default_timezone_set('America/Denver'); 
echo date_default_timezone_get(), '--', date("Y-m-d g:i:a"),'<br />'; 
?> 

Codepad Output

Google Result

+0

嗯...我只是硬編碼它以及關於1小時關閉無處不在。我想知道我的服務器是否與它有關,也許它不是UTC或它需要的。 – Naterade

+0

我剛剛檢查了我的服務器,果然,時區是正確的,但時間仍然是1個小時。我認爲他們需要運行那個ntpupdate。 – Naterade