PHP检测用户语言的方法 |
|
本文标签:PHP,检测,用户语言 本文实例讲述了PHP检测用户语言的方法 。分享给大家供大家参考 。具体如下:
function getPreferredLanguage() {
$langs = array();
if (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*q\s*=\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);
}
}
//extract most important (first)
foreach ($langs as $lang => $val) { break; }
//if complex language simplify it
if (stristr($lang,"-")) {$tmp = explode("-",$lang); $lang = $tmp[0]; }
return $lang;
}
希望本文所述对大家的php程序设计有所帮助 。 |