如何将当前时间显示或转换为服务器时间的本地时间

时间:2011-01-07 06:30:43

标签: mysql

如果我的服务器在我的网络项目中,日期和时间功能显示基于服务器的当前时间,但我想要当地时间,即IST,我该怎么做?

4 个答案:

答案 0 :(得分:2)

以UTC格式获取服务器的时间,然后在客户端上转换为本地时间:

<script type="text/javascript">
    var server_time_utc = Date.UTC(2011,1,6,4,30);
    var d = new Date(server_time_utc + new Date().getTimezoneOffset());
    alert(d);
</script>

答案 1 :(得分:1)

您可以在查询中使用它。但是你需要知道客户端的时区(在你的情况下是IST)和你的情况下的服务器 - 美国时区之一。

SELECT CONVERT_TZ(`my_timestamp_field`,'US/Eastern','US/Central');

答案 2 :(得分:0)

试,

Select convert_tz(now(),'EST','IST') ;

请参阅,了解更多信息,

http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_convert-tz

答案 3 :(得分:0)

如果要将数据转储到本地计算机,请将字段类型设置为时间戳。 TIMESTAMP使日期显示在本地mysql服务器的时区中:

TIMESTAMP values are converted from the current time zone to UTC for storage, and converted back from UTC to the current time zone for retrieval

一般来说,我的建议是将服务器时区设置为GMT(特别是如果日期字段类型不是TIMESTAMP),以避免开发人员之间的混淆/随着时间的推移。