栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

需要一个有关如何从Accept-Language请求标头中获取首选语言的示例

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

需要一个有关如何从Accept-Language请求标头中获取首选语言的示例

试试这个,它在PHP中,但是使用相同的正则表达式,我确定它可以适应任何语言:

$langs = array(); // used to store valuesif (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {    // break up string into pieces (languages and q factors)    preg_match_all('/([a-z]{1,8}(-[a-z]{1,8})?)s*(;s*qs*=s*(1|0.[0-9]+))?/i', $_SERVER['HTTP_ACCEPT_LANGUAGE'], $lang_parse);    if (count($lang_parse[1])) {        // create a list like "en" => 0.8        $langs = array_combine($lang_parse[1], $lang_parse[4]);        // set default to 1 for any without q factor        foreach ($langs as $lang => $val) { if ($val === '') $langs[$lang] = 1;        }        // sort list based on value         arsort($langs, SORT_NUMERIC);    }}

首先产生具有首选语言的排序数组:

Array(    [en-ca] => 1    [en] => 0.8    [en-us] => 0.6    [de-de] => 0.4    [de] => 0.2)

从示例

ACCEPT_LANGUAGE
标题:
en-ca,en;q=0.8,en-us;q=0.6,de-de;q=0.4,de;q=0.2

这里的工作示例



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/454438.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号