在我的网络应用程序中,如电子商务网站。每个项目都有时间限制。我将在每个项目中显示剩余时间。我正在使用UTC time.how转换每个用户的当前本地时间。例如,美国有4或5个不同的时区。我正在使用php codeigniter和我的Web应用程序的mysql
答案 0 :(得分:1)
如果我是你,我会一直保持服务器端的UTC,并且只能通过JavaScript转换到客户端的本地时间。然而,处理客户时间是棘手的,因为你无法真正知道他们的时间。
我见过3种方法:
1)使用var offset = new Date().getTimezoneOffset();
可能是以自动方式获取客户端系统时区的最佳方式。
2)尝试通过客户端IP确定时区。
如果您需要在服务器上进行渲染时间,这可能是我唯一能够自动完成的方式。但它非常容易出错,因为您的客户可能正在使用代理,VPN等。此外,geoIP数据库可能不够准确。
3)让用户设置时区。
这是安全的。用户可以决定。您也可以在cookie等中设置该设置。
momentjs timezone library可能会帮助您完成所有这三种方法。