或者这只能用javascript(客户端)来完成吗?
有两种方法可以做到这一点。 最明显的方法是使用Javascript,因为它存在于客户端世界中。 另一种方法是让用户在注册您的网站时指定他们的时区,然后您可以根据 GMT 进行一些后端操作,以获取他们访问的实际时间。 这当然有一个缺陷,即用户可以输入错误的时区。
单独使用 PHP 是不可能的。但是您可以通过JS将GET参数设置为用户的当前时间戳,并将差异与服务器上生成的时间戳进行比较。这样就可以计算服务器和客户端之间的时区差异。
2 个解决方案
- 您可以尝试使用javascript-并使用ajax发送到您的脚本中,但它不是100%准确的。
- 您可以使用GeoIP,然后匹配以查看他的时区。
这不可能只在Javascript中完成。标头中不包含timezone
。因此,它必须与PHP
这样的语言相结合。以下是一些解决方案:
如何在 PHP 中获取访问者的时区?
http://www.onlineaspect.com/2007/06/08/auto-detect-a-time-zone-with-javascript/