您好,欢迎访问一九零五行业门户网

PHP判断浏览器门类和浏览器语言(附各国语言简写代码)

php判断浏览器类型和浏览器语言(附各国语言简写代码)
用php语言来判断浏览器类型其实很简单。
因为浏览器在和服务器连接时候都会先发送一些包含自己信息的内容(浏览器类型、语言啦)。
这里我们主要分析的是_server[http_user_agent](浏览器类型)和_server[http_accept_language](浏览器语言)。
?
我们所要做的就是把这些内容读出来,然后用strpos或者preg_match函数来对比就可以了。
判断浏览器类型:
?

?判断浏览器语言:
?

?判断浏览器类型的具体程序如下:
?

?判断浏览器语言的具体程序如下:
?

?
判断浏览器类型主要是靠分析_server[http_user_agent]的内容,而分析浏览器语言则是分析_server[http_accept_language]。
?
?
或者:
?
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*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); } } //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;}
?af 公用荷兰语af-za 公用荷兰语 – 南非sq 阿尔巴尼亚sq-al 阿尔巴尼亚 -阿尔巴尼亚ar 阿拉伯语ar-dz 阿拉伯语 -阿尔及利亚ar-bh 阿拉伯语 -巴林ar-eg 阿拉伯语 -埃及ar-iq 阿拉伯语 -伊拉克ar-jo 阿拉伯语 -约旦ar-kw 阿拉伯语 -科威特ar-lb 阿拉伯语 -黎巴嫩ar-ly 阿拉伯语 -利比亚ar-ma 阿拉伯语 -摩洛哥ar-om 阿拉伯语 -阿曼ar-qa 阿拉伯语 -卡塔尔ar-sa 阿拉伯语 – 沙特阿拉伯ar-sy 阿拉伯语 -叙利亚共和国ar-tn 阿拉伯语 -北非的共和国ar-ae 阿拉伯语 – 阿拉伯联合酋长国ar-ye 阿拉伯语 -也门hy 亚美尼亚hy-am 亚美尼亚的 -亚美尼亚az azeriaz-az-cyrl azeri-(西里尔字母的) 阿塞拜疆az-az-latn azeri(拉丁文)- 阿塞拜疆eu 巴斯克eu-es 巴斯克 -巴斯克be belarusianbe-by belarusian-白俄罗斯bg 保加利亚bg-bg 保加利亚 -保加利亚ca 嘉泰罗尼亚ca-es 嘉泰罗尼亚 -嘉泰罗尼亚zh-hk 华 – 香港的 sarzh-mo 华 – 澳门的 sarzh-cn 华 -中国zh-chs 华 (单一化)zh-sg 华 -新加坡zh-tw 华 -台湾zh-cht 华 (传统的)hr 克罗埃西亚hr-hr 克罗埃西亚 -克罗埃西亚cs 捷克cs-cz 捷克 – 捷克da 丹麦文da-dk 丹麦文 -丹麦div dhivehidiv-mv dhivehi-马尔代夫nl 荷兰nl-be 荷兰 -比利时nl-nl 荷兰 – 荷兰en 英国en-au 英国 -澳洲en-bz 英国 -伯利兹en-ca 英国 -加拿大en-cb 英国 -加勒比海en-ie 英国 -爱尔兰en-jm 英国 -牙买加en-nz 英国 – 新西兰en-ph 英国 -菲律宾共和国en-za 英国 – 南非en-tt 英国 – 千里达托贝哥共和国en-gb 英国 – 英国en-us 英国 – 美国en-zw 英国 -津巴布韦et 爱沙尼亚et-ee 爱沙尼亚的 -爱沙尼亚fo faroesefo-fo faroese- 法罗群岛fa 波斯语fa-ir 波斯语 -伊朗王国fi 芬兰语fi-fi 芬兰语 -芬兰fr 法国fr-be 法国 -比利时fr-ca 法国 -加拿大fr-fr 法国 -法国fr-lu 法国 -卢森堡fr-mc 法国 -摩纳哥fr-ch 法国 -瑞士gl 加利西亚gl-es 加利西亚 -加利西亚ka 格鲁吉亚州ka-ge 格鲁吉亚州 -格鲁吉亚州de 德国de-at 德国 -奥地利de-de 德国 -德国de-li 德国 -列支敦士登de-lu 德国 -卢森堡de-ch 德国 -瑞士el 希腊el-gr 希腊 -希腊gu gujaratigu-in gujarati-印度he 希伯来he-il 希伯来 -以色列hi 北印度语hi-in 北印度的 -印度hu 匈牙利hu-hu 匈牙利的 -匈牙利is 冰岛语is-is 冰岛的 -冰岛id 印尼id-id 印尼 -印尼it 意大利it-it 意大利 -意大利it-ch 意大利 -瑞士ja 日本ja-jp 日本 -日本kn 卡纳达语kn-in 卡纳达语 -印度kk kazakhkk-kz kazakh-哈萨克kok konkanikok-in konkani-印度ko 韩国ko-kr 韩国 -韩国ky kyrgyzky-kz kyrgyz-哈萨克lv 拉脱维亚lv-lv 拉脱维亚的 -拉脱维亚lt 立陶宛lt-lt 立陶宛 -立陶宛mk 马其顿mk-mk 马其顿 -fyromms 马来ms-bn 马来 -汶莱ms-my 马来 -马来西亚mr 马拉地语mr-in 马拉地语 -印度mn 蒙古mn-mn 蒙古 -蒙古no 挪威nb-no 挪威 (bokm?l) – 挪威nn-no 挪威 (nynorsk)- 挪威pl 波兰pl-pl 波兰 -波兰pt 葡萄牙pt-br 葡萄牙 -巴西pt-pt 葡萄牙 -葡萄牙pa punjab 语pa-in punjab 语 -印度ro 罗马尼亚语ro-ro 罗马尼亚语 -罗马尼亚ru 俄国ru-ru 俄国 -俄国sa 梵文sa-in 梵文 -印度sr-sp-cyrl 塞尔维亚 -(西里尔字母的) 塞尔维亚共和国sr-sp-latn 塞尔维亚 (拉丁文)- 塞尔维亚共和国sk 斯洛伐克sk-sk 斯洛伐克 -斯洛伐克sl 斯洛文尼亚sl-si 斯洛文尼亚 -斯洛文尼亚es 西班牙es-ar 西班牙 -阿根廷es-bo 西班牙 -玻利维亚es-cl 西班牙 -智利es-co 西班牙 -哥伦比亚es-cr 西班牙 – 哥斯达黎加es-do 西班牙 – 多米尼加共和国es-ec 西班牙 -厄瓜多尔es-sv 西班牙 – 萨尔瓦多es-gt 西班牙 -危地马拉es-hn 西班牙 -洪都拉斯es-mx 西班牙 -墨西哥es-ni 西班牙 -尼加拉瓜es-pa 西班牙 -巴拿马es-py 西班牙 -巴拉圭es-pe 西班牙 -秘鲁es-pr 西班牙 – 波多黎各es-es 西班牙 -西班牙es-uy 西班牙 -乌拉圭es-ve 西班牙 -委内瑞拉sw swahilisw-ke swahili-肯尼亚sv 瑞典sv-fi 瑞典 -芬兰sv-se 瑞典 -瑞典syr syriacsyr-sy syriac-叙利亚共和国ta 坦米尔ta-in 坦米尔 -印度tt tatartt-ru tatar-俄国te telugute-in telugu-印度th 泰国th-th 泰国 -泰国tr 土耳其语tr-tr 土耳其语 -土耳其uk 乌克兰uk-ua 乌克兰 -乌克兰ur urduur-pk urdu-巴基斯坦uz uzbekuz-uz-cyrl uzbek-(西里尔字母的) 乌兹别克斯坦uz-uz-latn uzbek(拉丁文)- 乌兹别克斯坦vi 越南vi-vn 越南 -越南?
?
?
?
?
?
?
其它类似信息

推荐信息