2013-06-25 28 views
1

Im正在努力尋找解決方案, 有無論如何我可以使用php或js/jquery 函數/插件獲取本地一個城市的時間 或基於它的時區代碼的狀態? 例如可以說羅馬是時區2php通過時區代碼/數字(+1,+2等)獲取當地時間

非常感謝。

+1

你隨機/任意分配羅馬2號? **如果**,那麼您不會找到一個簡單的解決方案,因爲您沒有使用現有技術中存在的標準。 – BlargleMonster

+0

只是一個說明性的例子,羅馬是+1我的錯誤;) – inrob

+0

你不能。偏移改變。請參閱[時區標記wiki](http://stackoverflow.com/tags/timezone/info)中的「時區!=偏移」。改用時區名稱。羅馬將是「歐洲/羅馬」。見[此列表](http://en.wikipedia.org/wiki/List_of_tz_database_time_zones) –

回答

1

請看gmstrftime():

<?php 
    $offset = 2; 
    $timestamp = time() + ($offset * 60 * 60); 
    echo gmstrftime("%b %d %Y %H:%M:%S", $timestamp) . "\n"; 
?> 

此功能對格式GMT時間,這樣你就可以直接使用時區偏移。

PHP手冊這裏 - http://php.net/manual/en/function.gmstrftime.php

但一個更優雅的解決方案可能是使用的DateTime :: setTimezone():

<?php 
// From PHP manual 

$date = new DateTime('2000-01-01', new DateTimeZone('Pacific/Nauru')); 
echo $date->format('Y-m-d H:i:sP') . "\n"; 

$date->setTimezone(new DateTimeZone('Pacific/Chatham')); 
echo $date->format('Y-m-d H:i:sP') . "\n"; 
?>