检测客户端语言环境的最简单的方法(PHP 版)


PHP 提供了一个从 5.3.0 版本开始使用的函数,该函数用于将“$_SERVER['HTTP_ACCEPT_LANGUAGE']”变量解析为一个语言环境 −

示例

$locale = Locale::acceptFromHttp($_SERVER['HTTP_ACCEPT_LANGUAGE']);
echo $locale;

'$_SERVER['HTTP_ACCEPT_LANGUAGE']' 函数通过使用当前语言环境的语言作为参数来帮助检测语言环境。

输出

将产生以下输出 −

en_US

大多数浏览器提交了一个 Accept-Language HTTP 头,如果浏览器来自美国,则指定 en-us。有些较旧的浏览器仅使用 en。

基于英语英国的用户通常将他们的系统或用户语言环境设置为英语英国,这是默认的浏览器配置。这将在 Accept Language 头中产生 en-gb。其他国家/地区也有 en 语言环境, 例如 en-za(南非)等。

基于 Geo-IP 的猜测不太可能针对首选语言/语言环境正确。

更新时间:07-Apr-2020

827 次浏览

开启您的 职业之旅

完成课程获得认证

开始学习
广告