浏览器和服务器的时区差异

时间:2016-05-19 05:31:00

标签: javascript php momentjs

我一直在使用 momentjs 来检测用户(客户端)的 timezone 。我有服务器时区列表的PHP timezone_identifiers_list()函数。

我现在面临的问题是, momentjs 将时区返回为' Asia / Calcutta' 并且PHP将其作为&返回#39;亚/加尔各答' 。两者都相同,但给我一个相反的效果。

有没有办法匹配这两个?任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:3)

尝试使用UTC,然后根据位置添加或减去时间开/关。

答案 1 :(得分:2)

我没有使用过moment.js,但查看文档http://momentjs.com/timezone/似乎你可以在祖鲁时间得到时间。

dec.tz('Asia/Calcutta').format('ha z');
// where dec is your moment time.

在php中你可以做同样的事情

echo gmdate('H', strtotime(time()));
// this should return the + or - hours your server time is from UTC/zulu

使用这两个值,您可以计算出用户的时间。