2009-02-13 124 views
2

我正在使用PHP和MySQL。PHP,如何設置時區?

場景:

註冊表只需要2個字段。電子郵件和密碼,然後,從英國註冊的第一個用戶,來自中國的第二個用戶等。

有沒有什麼辦法在PHP中爲不同國家的用戶自動設置時區?我檢查了php.net,但沒有lucks ..

回答

6

你可以嘗試推斷他們的country from their IP,並從中推導出他們的時區。

另外,像這樣添加了一些表格,讓JavaScript來告訴你時區所使用的瀏覽器偏移...

<script language="JavaScript"> 
<!-- 
    var d= new Date(); 
    document.write('<input type="hidden" name="timeZoneOffset" '); 
    if (d) { 
     document.write('value="' + d.getTimezoneOffset()/60 + '">'); 
    } else { 
     document.write('value="n/a">'); 
    } 
// --> 
</script> 
<noscript> 
    <input type="hidden" name="timeZoneOffset" value="n/a"> 
</noscript> 
+0

謝謝,我會試試看。也許我應該開始學習像JavaScript這樣的客戶端腳本.. – roa3 2009-02-13 08:46:49

1

不,這不可能通過PHP,因爲瀏覽器並不總是發送該信息。上次我們通過發送ajax調用並更新會話的時區屬性來解決該問題,因爲JavaScript引擎確實有權訪問該瀏覽器屬性。

+0

你的意思是使用JavaScript,我們能做到這一點? – roa3 2009-02-13 08:36:09