gpt4 book ai didi

php - 解析 HTTP_ACCEPT_LANGUAGE

转载 作者:可可西里 更新时间:2023-10-31 23:57:31 26 4
gpt4 key购买 nike

我遇到了一个解析 HTTP_ACCEPT_LANGUAGE: http://www.thefutureoftheweb.com/blog/use-accept-language-header 的脚本

此脚本返回包含可接受语言的 ORDERED 数组:

数组( [它] => 1 [ar] => 0.8 [ja] => 0.6 [cn] => 0.4 [de] => 0.2)

现在,我想创建一个包含可用语言的数组:

$av_lang = array('en','fr','de','it'); (无序数组)

然后我想遍历第一个数组并获取第二个数组中的第一个键。

例如,它从第一个数组中获取 'en' 并检查是否存在于第二个数组中,如果不存在,则转到下一个键 'ar' 并检查它。如果它们都不是,则返回一个默认语言,如“en”。

最后我想在 $av_lang 中获取可用语言之一。

谢谢。

最佳答案

我个人使用这样的东西:

$lang = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
preg_match_all('/(\W|^)([a-z]{2})([^a-z]|$)/six', $lang, $m, PREG_PATTERN_ORDER);
$user_langs = $m[2];

你得到的是一个 2 字母语言的数组,然后你可以遍历它们并找到你支持的语言,即

$supported_langs = array('en', 'fr', 'de', 'it');
$user_lang = 'en'; // Default
foreach($user_langs AS $tmp){
if(in_array($tmp, $supported_langs)){
$user_lang = $tmp;
break;
}
}

此时 $user_lang 将包含标题中第一个支持的语言(或默认)

关于php - 解析 HTTP_ACCEPT_LANGUAGE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6976963/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com