在 PHP 中检测客户端语言环境的最简单方法
phpserver side programmingprogramming更新于 2025/9/8 14:37:17
从 5.3.0 开始,PHP 提供了一个函数,用于将 ‘$_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。
基于英语-英国的用户通常将其系统或用户语言环境设置为英语-英国,这是默认的浏览器配置。这将导致 en-gb 作为 Accept Language 标头。其他国家/地区使用 en 语言环境,例如 en-za(南非)等等。
基于地理 IP 的猜测在首选语言/语言环境上不太可能正确。

