如何在美国和英国风格的人群中应用美式风格?
例如,我想根据用户在我网站中的位置更改标记。
答案 0 :(得分:4)
首先,您需要找到访问者的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
答案 1 :(得分:3)
答案 2 :(得分:1)
如果您确实需要用户的位置,则关键字为geolocation。
但是,出于您的目的,您只需检查$_SERVER["ACCEPT_LANGUAGE"]
即可。 syntax有点复杂。幸运的是,几乎每个客户都会立即完成应该做的事情并订购首选位置。因此,为您支持的所有区域设置($_SERVER["ACCEPT_LANGUAGE"], $lang)
(例如“en-us”)计算stripos
$lang
,并获取产生错误的最低丢弃区域设置。