我正在开发一个基于cakephp的网站,这是一个多语种网站。需要根据用户的IP地址在站点上设置默认语言。
我可以获得客户的IP地址和他/她的国家,但我怎样才能通过api或其他方式获得该国家的国家语言?
请帮帮我。
提前致谢。
答案 0 :(得分:3)
根据用户的IP地址在站点上设置默认语言。
除非这是没有accept language header的后备/默认值,否则你应该尊重the client gives you。
或者 - 如何与具有多种语言的国家合作 - 例如瑞士(4 langauges)?
答案 1 :(得分:2)
您可以使用PHP的 GeoIP 功能实现此目的。请参阅此处的documentation,了解其运作方式。
以下示例使用Google.com的IP显示geoip_continent_code_by_name()
功能:
<强>代码:强>
<?php
$continent = geoip_continent_code_by_name('74.125.227.180');
if ($continent) {
echo 'This host is located in: ' . $continent;
}
?>
<强>输出:强>
该房东位于:NA