最模板 - 外贸网站建设,外贸网站模板

最模板

当前位置: 首页 > 建站教程 > php教程 >

php $_SERVER['HTTP_USER_AGENT'] 用法介绍

时间:2014-06-09 16:40来源: 作者: 点击: 次
在php中HTTP_USER_AGENT是用来获取用户相关信息,包括了用户浏览器,操作系统工程,是否安装了alex toolbar条哦,等信息,有需要了解的朋友可参考. 1.用户访问服务器时,利用PHP的超级全局变量$_SERVER数组

在php中HTTP_USER_AGENT是用来获取用户相关信息,包括了用户浏览器,操作系统工程,是否安装了alex toolbar条哦,等信息,有需要了解的朋友可参考.

1.用户访问服务器时,利用PHP的超级全局变量$_SERVER数组中字['HTTP_USER_AGENT'] 获取访问用户的所有信息

实例代码如下:

  1. <?php  
  2.  echo $_SERVER['HTTP_USER_AGENT']; 
  3.  ?> 

输出结果

Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; InfoPath.2; AskTbPTV/5.17.0.25589; Alexa Toolbar)

2.利用正则表达式匹配以上字符串,用户的浏览器 操作系统信息

3.PHP根据匹配后的字符串(用户的浏览器 操作系统信息),分配需要的CSS文件,JS等等…返回给用户

我的浏览器 操作系统信息

Browser: Chrome 5.0

Platform: Windows 7

实例代码如下:

  1. <?php 
  2. //显示访问用户的浏览器信息 
  3. echo 'Browser: ' . determinebrowser($Agent) . '<BR>'; 
  4. //显示访问用户的操作系统平台 
  5. echo 'Platform: ' . determineplatform($Agent). '<BR>'; 
  6. //正值表达式比对解析$_SERVER['HTTP_USER_AGENT']中的字符串 获取访问用户的浏览器的信息 
  7. function determinebrowser ($Agent) { 
  8. $browseragent="";   //浏览器 
  9. $browserversion=""; //浏览器的版本 
  10. if (ereg('MSIE ([0-9].[0-9]{1,2})',$Agent,$version)) { 
  11.  $browserversion=$version[1]; 
  12.  $browseragent="Internet Explorer"; 
  13. } else if (ereg( 'Opera/([0-9]{1,2}.[0-9]{1,2})',$Agent,$version)) { 
  14.  $browserversion=$version[1]; 
  15.  $browseragent="Opera"; 
  16. } else if (ereg( 'Firefox/([0-9.]{1,5})',$Agent,$version)) { 
  17.  $browserversion=$version[1]; 
  18.  $browseragent="Firefox"; 
  19. }else if (ereg( 'Chrome/([0-9.]{1,3})',$Agent,$version)) { 
  20.  $browserversion=$version[1]; 
  21.  $browseragent="Chrome"; 
  22. } 
  23. else if (ereg( 'Safari/([0-9.]{1,3})',$Agent,$version)) { 
  24.  $browseragent="Safari"; 
  25.  $browserversion=""; 
  26. } 
  27. else { 
  28. $browserversion=""; 
  29. $browseragent="Unknown"; 
  30. } 
  31. return $browseragent." ".$browserversion; 
  32. } 
  33. // 同理获取访问用户的浏览器的信息 
  34. function determineplatform ($Agent) { 
  35. $browserplatform==''; 
  36. if (eregi('win',$Agent) && strpos($Agent, '95')) { 
  37. $browserplatform="Windows 95"; 
  38. } 
  39. elseif (eregi('win 9x',$Agent) && strpos($Agent, '4.90')) { 
  40. $browserplatform="Windows ME"; 
  41. } 
  42. elseif (eregi('win',$Agent) && ereg('98',$Agent)) { 
  43. $browserplatform="Windows 98"; 
  44. } 
  45. elseif (eregi('win',$Agent) && eregi('nt 5.0',$Agent)) { 
  46. $browserplatform="Windows 2000"; 
  47. } 
  48. elseif (eregi('win',$Agent) && eregi('nt 5.1',$Agent)) { 
  49. $browserplatform="Windows XP"; 
  50. } 
  51. elseif (eregi('win',$Agent) && eregi('nt 6.0',$Agent)) { 
  52. $browserplatform="Windows Vista"; 
  53. } 
  54. elseif (eregi('win',$Agent) && eregi('nt 6.1',$Agent)) { 
  55. $browserplatform="Windows 7"; 
  56. } 
  57. elseif (eregi('win',$Agent) && ereg('32',$Agent)) { 
  58. $browserplatform="Windows 32"; 
  59. } 
  60. elseif (eregi('win',$Agent) && eregi('nt',$Agent)) { 
  61. $browserplatform="Windows NT"; 
  62. }elseif (eregi('Mac OS',$Agent)) { 
  63. $browserplatform="Mac OS"; 
  64. } 
  65. elseif (eregi('linux',$Agent)) { 
  66. $browserplatform="Linux"; 
  67. } 
  68. elseif (eregi('unix',$Agent)) { 
  69. $browserplatform="Unix"; 
  70. } 
  71. elseif (eregi('sun',$Agent) && eregi('os',$Agent)) { 
  72. $browserplatform="SunOS"; 
  73. } 
  74. elseif (eregi('ibm',$Agent) && eregi('os',$Agent)) { 
  75. $browserplatform="IBM OS/2"; 
  76. } 
  77. elseif (eregi('Mac',$Agent) && eregi('PC',$Agent)) { 
  78. $browserplatform="Macintosh"; 
  79. } 
  80. elseif (eregi('PowerPC',$Agent)) { 
  81. $browserplatform="PowerPC"; 
  82. } 
  83. elseif (eregi('AIX',$Agent)) { 
  84. $browserplatform="AIX"; 
  85. } 
  86. elseif (eregi('HPUX',$Agent)) { 
  87. $browserplatform="HPUX"; 
  88. } 
  89. elseif (eregi('NetBSD',$Agent)) { 
  90. $browserplatform="NetBSD"; 
  91. } 
  92. elseif (eregi('BSD',$Agent)) { 
  93. $browserplatform="BSD"; 
  94. } 
  95. elseif (ereg('OSF1',$Agent)) { 
  96. $browserplatform="OSF1"; 
  97. } 
  98. elseif (ereg('IRIX',$Agent)) { 
  99. $browserplatform="IRIX"; 
  100. } 
  101. elseif (eregi('FreeBSD',$Agent)) { 
  102. $browserplatform="FreeBSD"; 
  103. } 
  104. if ($browserplatform=='') {$browserplatform = "Unknown"; } 
  105. return $browserplatform; 
  106. } 
  107. ?> 

判断浏览器语言的具体程序如下,实例代码如下:

  1. <?php 
  2. $lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 4); //只取前4位,这样只判断最优先的语言.如果取前5位,可能出现en,zh的情况,影响判断.   
  3. if (preg_match("/zh-c/i", $lang))   
  4. echo "简体中文";   
  5. else if (preg_match("/zh/i", $lang))   
  6. echo "繁?中文";   
  7. else if (preg_match("/en/i", $lang))   
  8. echo "English";   
  9. else if (preg_match("/fr/i", $lang))   
  10. echo "French";   
  11. else if (preg_match("/de/i", $lang))   
  12. echo "German";   
  13. else if (preg_match("/jp/i", $lang))   
  14. echo "Japanese";   
  15. else if (preg_match("/ko/i", $lang))   
  16. echo "Korean";   
  17. else if (preg_match("/es/i", $lang))   
  18. echo "Spanish";   
  19. else if (preg_match("/sv/i", $lang))   
  20. echo "Swedish";   
  21. else echo $_SERVER["HTTP_ACCEPT_LANGUAGE"];   
  22. ?> 

判断浏览器类型主要是靠分析_SERVER["HTTP_USER_AGENT"]的内容,而分析浏览器语言则是分析_SERVER["HTTP_ACCEPT_LANGUAGE"].

(责任编辑:admin)
------分隔线----------------------------
栏目列表
推荐内容