2010-08-31 114 views
2

我主持我的网站在美国,我的网站列出了基于时间和事件的假期,并根据日期生日..如何根据访问者的国家获得当前日期?

我使用PHP和MySQL

当有人从印度访问我的网站在网站上显示的日期将会减少一天..

我如何根据访问者的国家得到更改日期和时间?

+0

的可能重复[我怎样才能确定web用户的时区?(http://stackoverflow.com/questions/13/how-can-i-determine-a-web-用户时区) – 2010-08-31 04:49:53

回答

0
  1. 使用此获取访问者的IP:
    $visitorIP = $_SERVER['REMOTE_ADDR'];

  2. 其映射到国家/城市。有许多IP到国家数据库可用。我更喜欢MaxMind GeoIP Country DatabaseMaxMind GeoIP City Database

  3. 将时区转换为该国家/城市。

+1

我认为各国可以有> 1个时区。 – alex 2010-08-31 04:46:33

+0

@Alex,是的,但你也可以从知识产权中获得城市,并将时区映射到该城市。 – shamittomar 2010-08-31 04:49:50

+0

@shamitomar。时区的城市是时区的主要城市。通常是该国的首都。加拿大每个省有一个时区城市。美国每个州至少有一个时区,因为有些州有多个时区。询问用户哪个国家的时区(如果有多个)是一个正确的方法。这是数据库中额外的别名,用于不太可靠的时区名称,如EST,CST等。 – BillThor 2010-08-31 05:08:48

0

@Ishmaeel说:

的 最流行的(?==标准)的方式确定我见过 各地时区简单地询问用户 ximself。如果您的网站需要 订阅,则可以将其保存在 用户的个人资料数据中。对于anon 用户,日期可能显示为UTC或GMT或其他类似的 。

我不想成为一个聪明的艾克。 只是有时候某些问题 在任何 编程上下文之外都有更好的解决方案。

Determine a User's Timezone

相关问题