检查用户的位置,然后应用特定的样式?

问题描述:

如何将美式风格应用于美国人和英国风格的英国人?检查用户的位置,然后应用特定的样式?

例如,我想根据用户在我的网站中的位置更改标志。

首先,你需要找到你的访问者的IP地址。它将位于$ _SERVER ['REMOTE_ADDR']全局变量中。然后,您可以将这个IP视为IP到国家/地区映射的数据库,以获取IP的国家/地区代码。

这种方法不是100%准确的,但对大多数用途来说“足够好”,更重要的是它很快。如果您期望高流量,您可能需要将国家代码缓存到Cookie中以避免重复查找。

一个这样的映射可以在这里找到: http://software77.net/cgi-bin/ip-country/geo-ip.pl

一个PHP类,需要一个IP地址以及使用捆绑的映射文件返回国家代码:出现 http://www.phpclasses.org/browse/package/2363.html

+0

链接到被打破? – 2009-03-06 00:57:55

如果你真的想用户的位置,关键字是geolocation

但是,为了您的目的,您只需检查$_SERVER["ACCEPT_LANGUAGE"]syntax有点复杂。幸运的是,几乎每个客户都会做本来应该做的事情,并订购首选位置。因此,计算stripos($_SERVER["ACCEPT_LANGUAGE"], $lang)所有区域设置$lang(如“en-us”)您支持并采用产生错误的最低丢弃语言环境。