首页 > 开发 > PHP > 正文

PHP检测用户语言的方法

2024-05-04 23:36:14
字体:
来源:转载
供稿:网友

这篇文章主要介绍了PHP检测用户语言的方法,涉及针对php预定义服务器变量$_SERVER['HTTP_ACCEPT_LANGUAGE']的判定与使用技巧,需要的朋友可以参考下

本文实例讲述了PHP检测用户语言的方法。分享给大家供大家参考。具体如下:

 

 
  1. function getPreferredLanguage() { 
  2. $langs = array(); 
  3. if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) { 
  4. // break up string into pieces (languages and q factors) 
  5. 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); 
  6. if (count($lang_parse[1])) { 
  7. // create a list like "en" => 0.8 
  8. $langs = array_combine($lang_parse[1], $lang_parse[4]); 
  9. // set default to 1 for any without q factor 
  10. foreach ($langs as $lang => $val) { 
  11. if ($val === ''$langs[$lang] = 1; 
  12. // sort list based on value  
  13. arsort($langs, SORT_NUMERIC); 
  14. //extract most important (first) 
  15. foreach ($langs as $lang => $val) { break; } 
  16. //if complex language simplify it 
  17. if (stristr($lang,"-")) {$tmp = explode("-",$lang); $lang = $tmp[0]; } 
  18. return $lang

希望本文所述对大家的php程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表