首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >主要站点如何检测时区?

主要站点如何检测时区?
EN

Stack Overflow用户
提问于 2011-10-08 18:32:24
回答 6查看 12.2K关注 0票数 16

Facebook,myspace,MSN,craigslist;所有这些都可以检测时区并正确显示时间和日期,而无需提交表单或重新加载页面。

他们是怎么做到的?我有一个相当大的网站,并有人发布文章,需要显示正确的时间(上传下午3点或下午6点取决于时区)。

预加载器?Javascript?加载页面并重新加载它?我的网站目前有人进入网站,并在第一次进入时,它通过javascript重新加载带有时区更新信息的页面。然而,这是一件非常恼人的事情,我正在寻找另一种选择。我知道在加载时,我可以发送一个ajax请求,然后让它用用户的正确时区更新整个站点的所有内容,但如果我必须单击上一步,或者重新加载它,它会询问我是否愿意再次发送信息,这也是不好的。那么他们是怎么做到的呢?

我在玩Facebook,改变了我在本地机器上的位置,它似乎每隔5分钟左右就会更新一次时区。

我是php,基于zend-framework。

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2011-10-08 18:55:59

没有"timezone“请求头,或者类似的东西,所以你不能用php

但是使用javascript可以获得客户端的时区偏移,然后可以发出xmlhttp请求将信息发送到php。

看看这个:http://www.pageloom.com/automatic-timezone-detection-with-javascript

非常简单!

希望这能有所帮助

票数 16
EN

Stack Overflow用户

发布于 2011-10-08 18:48:53

您可以找到用户国家/地区using IP address geocoding,然后拥有一些包含每个国家/地区时区的数组。我想没有别的办法了。您可以像这样获取用户国家/地区:

<?php
$file = file_get_contents("http://api.hostip.info/get_html.php?ip=".$_SERVER['REMOTE_ADDR']."");
?>

然后对$file使用explode即可。

另请看这些Stackoverflow代码:

How can I determine a web user's time zone?

Any Reliable API available to determine User's city and country from IP address

票数 6
EN

Stack Overflow用户

发布于 2011-10-08 18:57:17

我相信他们使用IP寻址和地理位置。非那样做不行。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7696215

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档