欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

判断客户端浏览器的类型

程序员文章站 2022-04-11 08:46:24
...
如上所述,很多时候我们需要知道用户的浏览器类型




  1. /**
  2. * 判断浏览器名称和版本
  3. */
  4. function get_user_browser()
  5. {
  6. if (empty($_SERVER['HTTP_USER_AGENT']))
  7. {
  8. return '';
  9. }
  10. $agent = $_SERVER['HTTP_USER_AGENT'];
  11. $browser = '';
  12. $browser_ver = '';
  13. if (preg_match('/MSIE\s([^\s|;]+)/i', $agent, $regs))
  14. {
  15. $browser = 'Internet Explorer';
  16. $browser_ver = $regs[1];
  17. }
  18. elseif (preg_match('/FireFox\/([^\s]+)/i', $agent, $regs))
  19. {
  20. $browser = 'FireFox';
  21. $browser_ver = $regs[1];
  22. }
  23. elseif (preg_match('/Maxthon/i', $agent, $regs))
  24. {
  25. $browser = '(Internet Explorer ' .$browser_ver. ') Maxthon';
  26. $browser_ver = '';
  27. }
  28. elseif (preg_match('/Opera[\s|\/]([^\s]+)/i', $agent, $regs))
  29. {
  30. $browser = 'Opera';
  31. $browser_ver = $regs[1];
  32. }
  33. elseif (preg_match('/OmniWeb\/(v*)([^\s|;]+)/i', $agent, $regs))
  34. {
  35. $browser = 'OmniWeb';
  36. $browser_ver = $regs[2];
  37. }
  38. elseif (preg_match('/Netscape([\d]*)\/([^\s]+)/i', $agent, $regs))
  39. {
  40. $browser = 'Netscape';
  41. $browser_ver = $regs[2];
  42. }
  43. elseif (preg_match('/safari\/([^\s]+)/i', $agent, $regs))
  44. {
  45. $browser = 'Safari';
  46. $browser_ver = $regs[1];
  47. }
  48. elseif (preg_match('/NetCaptor\s([^\s|;]+)/i', $agent, $regs))
  49. {
  50. $browser = '(Internet Explorer ' .$browser_ver. ') NetCaptor';
  51. $browser_ver = $regs[1];
  52. }
  53. elseif (preg_match('/Lynx\/([^\s]+)/i', $agent, $regs))
  54. {
  55. $browser = 'Lynx';
  56. $browser_ver = $regs[1];
  57. }
  58. if (!empty($browser))
  59. {
  60. return addslashes($browser . ' ' . $browser_ver);
  61. }
  62. else
  63. {
  64. return 'Unknow browser';
  65. }
  66. }
复制代码