1

我想在不问他的情况下,哪种方式是猜测用户语言的最佳方式。以下是我发现的几个选项,但请随意添加您认为值得一提的任何其他选项。

  1. $_SERVER['HTTP_ACCEPT_LANGUAGE']通过 PHP使用
  2. 使用任何 Maps API(例如 Google Maps 或 Bing Maps)来确定用户从哪个国家访问网站(如果他使用支持定位服务的现代浏览器),然后检测该国家的官方语言是什么。
  3. 让 PHP 执行一个简单的 shell 脚本(shell_exec()),向网站(如http://geoip.s12.com.br或类似网站)发送请求,以确定用户从哪个国家/地区访问该网站,然后检测哪个国家/地区是那个国家的官方语言。
  4. 我可能对此有误,因为我没有对此进行大量研究:使用 php 的 GeoIp 函数来确定用户从哪个国家/地区访问该网站,然后检测该国家/地区的官方语言是什么。( http://www.php.net/manual/en/book.geoip.php )

我知道第一个几乎在任何情况下都可以,但是我想知道哪个更准确(Facebook 或 Google 用来设置您的语言的方式)。

4

2 回答 2

2

我会选择 $_SERVER['HTTP_ACCEPT_LANGUAGE'] 主要是因为它是用户可配置的。

地理定位的问题在于,语言真的不应该与位置搜索联系在一起。当然,这会让你做出有根据的猜测,但我很容易在中国度假,或者更喜欢我的互联网使用“语言 x”

无论您使用哪种方法进行有根据的猜测,我肯定仍会提供选择他们首选语言的选项来覆盖您的猜测。

于 2013-09-09T22:21:59.593 回答
0

有些国家有多种语言,所以 2,3 和 4 根本不起作用,所以对我来说,最好的选择是使用 HTT_ACCEPT_LANGUAGE。

于 2013-09-09T22:19:25.227 回答