PHP,如何设置时区?

时间:2009-02-13 08:27:23

标签: php timezone

我正在使用PHP和mysql。

情景:

注册表只需要2个字段。电子邮件和密码,然后,第一个用户从英国注册,第二个用户来自中国等。

有没有办法在PHP中为不同的用户国家自动设置时区?我检查了php.net,但没有运气..

2 个答案:

答案 0 :(得分: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>

答案 1 :(得分:1)

不,这是不可能通过PHP,因为浏览器并不总是发送该信息。上次我们通过发送ajax调用并更新会话的timezone属性来解决该问题,因为javascript引擎 可以访问该浏览器属性。