我的客户在印度,服务器在美国。如果用户从印度提交他的帖子,它会存储在美国服务器上,所以当我向用户显示post提交时间时,它就是美国时间。我想按照客户端时区显示它。
发布于 2016-12-30 20:49:14
处理时区的最简单方法是在后台使用时代时间,并在呈现时将其转换为用户首选的时区(或使用客户端代码)。
时代时间是自1970年1月1日在伦敦诞生以来的秒数。例如,现在的时间是1483130714。这意味着我们有一个简单的数字,可以毫不费力地比较和排序,来表示精确的时刻,而不需要关心日期、时区、地点和它们令人沮丧的细节。几乎所有流行的语言都有能力将这些数字解析为自己的时间戳值。在JavaScript中,您可以使用new Date(1483130714)
来完成这个任务。您将得到一个date对象,然后您可以显示您喜欢的任何内容(如使用toLocaleString
)。
如果你不使用Epoch时间,你会想要使用UTC,次好的东西。重要的是要以一致、普遍理解的格式存储,然后根据需要将其转换为用户的首选格式。
发布于 2016-12-30 20:46:20
您需要将日期存储在UTC中,然后根据浏览器区域性和时区进行转换。因此,将所有日期存储在UTC中,并且根据您可以添加偏移量的浏览器区域性,如果用户设置了错误的区域性和时间,这可能会很棘手。
https://stackoverflow.com/questions/41402398
复制相似问题