2

我想创建一个 php 脚本来一次在世界各地进行在线比赛。

我的第一个问题..我真的可以在一个时间跨度内做到这一点,如果是,那么如何?

例如。假设我在 2012 年 6 月 10 日举办了一场比赛,时间是 IST 下午 2-4 点或服务器所在的任何地方。现在我希望来自世界各地的用户只能在这个时候参加比赛。我应该如何告诉用户他的转换后的本地时区?我不希望用户为时间转换而痛苦,我也不愿意为世界各地的用户提供转换工具。

我希望该用户应该在提到的当地时区日期和时间参加比赛!。

提前致谢 !

4

2 回答 2

1

通过设置 cookie 或使用 ajax 调用来获取客户端的时区。

于 2012-06-07T05:34:33.447 回答
0

这很简单。将服务器时间发送给客户端(一些隐藏的跨度或输入。)

function getLocalTime(gmt)  {
       var min = gmt.getTime() / 1000 / 60; // convert gmt date to minutes
       var localNow = new Date().getTimezoneOffset(); // get the timezone 
                                                      // offset in minutes            
       var localTime = min - localNow; // get the local time
       return new Date(localTime * 1000 * 60); // convert it into a date
    }

//var strDate = [get text date sent from server here];
var dt = new Date(Date.parse(strDate));
var localDate = getLocalTime(dt);
//[Set value of your localTime here]

使用 javascript 将此时间转换为用户本地时间。仅向用户显示用户本地时间。

Contest will be held at : <span id='localTime'></span>
于 2012-06-07T05:33:26.607 回答