2011-08-03 67 views
0

我已設置的時區的任何時間段,用戶具有 例如"America/New_York"date_default_timezone_set(「時區」)和MySQL時間戳

date_default_timezone_set("America/New_York"); 

然後我使流動的語句

$data =mysql_query("SELECT DATE FROM TABLE WHERE ID = 2"); 
$row = mysql_fetch_array($data); 

echo date("H:i:s",strtotime($row['data'))); 

的DATE列存儲日期格林尼治標準時間..我想在

顯示等效日期任何時區用戶更喜歡

有什麼不對,也許我錯了@東西

請任何幫助。

回答

1

注意我的變化...

echo date("H:i:s", strtotime($row['data']) + date('Z')); // date('Z') returns timezone offset in seconds 
+0

我想設置任何時區作爲用戶偏好...不是新工作始終 – confucius

+0

請注意我的編輯 - 'date()'使用'Z'來確定GMT的時區偏移量,基於目前設置爲默認時區。 – 65Fbef05

0

如果啓用了您的時區表:

mysql_query("SET time_zone='EST';"); 
$data =mysql_query("SELECT DATE FROM TABLE WHERE ID = 2"); 
//...etc. 

如果你還沒有:

mysql_query("SET time_zone='-05:00';"); 
$data =mysql_query("SELECT DATE FROM TABLE WHERE ID = 2"); 
//...etc.