我想确定访问者的区域。我的网站有4种语言版本,我想要检测访问者是否从英语国家或俄语或阿拉伯语或西班牙语国家访问我的网站。什么是最好的方式来做到这一点?php根据访问者的语言重定向的最佳方式
1
A
回答
1
这是我们在脚本中使用做类似的检测:
function get_preferred_lang() {
if (isset($_SERVER["HTTP_ACCEPT_LANGUAGE"])) {
preg_match_all('#([a-z-]+) *(?:; *q=([0-9.]+))?#', strtolower($_SERVER["HTTP_ACCEPT_LANGUAGE"]), $matches);
$accept = array_combine($matches[1], $matches[2]);
foreach ($accept as $key => $val)
$accept[$key] = $val == '' ? 1.0 : (float) $val;
arsort($accept);
return substr(array_shift(array_keys($accept)),0,2);
} else {
return 'unknown';
}
}
-1
您可以使用$_SERVER['REMOTE_ADDR'];
获取用户的IP地址,这个使用这个链接的基础上,根据您的要求GEOIP进一步进行
0
相关问题
- 1. 重定向用户根据语言
- 2. 重定向的最佳方式?
- 3. 管理重定向的最佳方式
- 4. 如何根据访问者的IP地址重定向
- 5. 根据访问者的IP地址重定向ip
- 6. .htaccess:根据访问的url重定向
- 7. PHP:重定向不存在的URL的最佳方式?
- 8. 根据Django中的IP地址(国家)重定向域名的最佳方式
- 9. 根据浏览器语言重定向用户(不在php中)
- 10. 在php中重定向url的最佳方式是什么?
- 11. 根据推荐网址重定向访问者
- 12. 根据浏览器语言重定向用户的最佳解决方案是什么
- 13. 重定向根据自己的访问PHP
- 14. 实现元语言编译为PHP的最佳方式
- 15. 多语言PHP - 检测访客的语言和直接到内容的最佳方式
- 16. 在线显示访问者的最佳方式
- 17. 正确地重定向访问者(PHP和正则表达式)
- 18. 语言重定向
- 19. 语言重定向
- 20. 这是访问webservice的最佳方式
- 21. 在login.aspx页面中重定向用户的最佳方式webforms尝试访问无法访问的页面
- 22. 在PHP中重定向/重新加载页面的最佳方式
- 23. 实现PREPEND_WWW相反的最佳方式(例如,从“www”重定向到根域)?
- 24. php语言自动重定向
- 25. 用PHP和Wordpress重定向语言
- 26. PHP - 不能重定向新的访问者
- 27. 使用的htaccess或PHP或任何重定向访问者
- 28. 获取网站访问者的语言环境(语言)?
- 29. 301重定向旧的osCommerce链接的最佳方式
- 30. 访问数据库中的SQL语句和存储过程的最佳方式
使用$ _SERVER ['REMOTE_ADDR'];并在IP列表的基础上向您的访问者做以下 – swapnesh
我讨厌那样做的网站。给用户选择他想要的语言。 –
您应该使用'HTTP_ACCEPT_LANGUAGE'并提供手动设置语言的选择。当人们通过代理/ VPN /公司网关访问时,GEOIP并不总是工作,这些网关并不反映他们实际说的语言,更不用说告诉你他们位于何处! – nickhar