如何将美式风格应用于美国人,将英式风格应用于英国人?
例如,我想根据用户在我的站点中的位置更改一个标志。
发布于 2009-03-06 00:57:55
首先,你需要找到访问者的IP地址。它将位于$_SERVER‘’REMOTE_ADDR‘全局变量中。然后,您可以在IP到国家/地区映射的数据库中查找此IP,以获得该IP的国家/地区代码。
这种方法不是100%准确,但它对于大多数用途来说“足够好”,更重要的是它是快速的。如果您期望高流量,您可能希望将国家/地区代码缓存到cookie中,以避免重复查找。
一个这样的映射可以在这里找到:http://software77.net/cgi-bin/ip-country/geo-ip.pl
获取IP并使用捆绑的映射文件返回国家代码的PHP类:http://www.phpclasses.org/browse/package/2363.html
发布于 2009-03-06 00:56:15
发布于 2009-03-06 00:57:31
如果你真的想知道用户的位置,关键字是geolocation。
但是,出于您的目的,您可以只检查$_SERVER["ACCEPT_LANGUAGE"]。syntax有点复杂。幸运的是,几乎每个客户都立即做了应该做的事情,并订购了首选位置。因此,为您支持的所有地区(如"en-us")计算stripos($_SERVER["ACCEPT_LANGUAGE"], $lang),并取最低的地区,丢弃产生false的地区。
https://stackoverflow.com/questions/617345
复制相似问题