PHP ECShop中get_user_browser()函數的功能

墨辰丷
發布: 2023-03-29 20:38:02
原創
1470 人瀏覽過

這篇文章主要介紹PHP ECShop中get_user_browser()函數的功能,有興趣的朋友參考下,希望對大家有幫助。

看到ecshop中有這麼一個函數get_user_browser(),取得瀏覽器的名稱和版本。雖然獲取的信息只是簡單的一些信息,但是還是很實用。其原理主要是透過$_SERVER['HTTP_USER_AGENT']取得瀏覽器訊息,再用正規進行比對得出瀏覽器的資訊。

以下是各瀏覽器運行的效果:

源碼如下:

<?php
function get_user_browser()
{
  if (empty($_SERVER[&#39;HTTP_USER_AGENT&#39;]))
  {
    return &#39;&#39;;
  }
  $agent  = $_SERVER[&#39;HTTP_USER_AGENT&#39;];
  $browser  = &#39;&#39;;
  $browser_ver = &#39;&#39;;
  if (preg_match(&#39;/MSIE\s([^\s|;]+)/i&#39;, $agent, $regs))
  {
    $browser  = &#39;Internet Explorer&#39;;
    $browser_ver = $regs[1];
  }
  elseif (preg_match(&#39;/FireFox\/([^\s]+)/i&#39;, $agent, $regs))
  {
    $browser  = &#39;FireFox&#39;;
    $browser_ver = $regs[1];
  }
  elseif (preg_match(&#39;/Maxthon/i&#39;, $agent, $regs))
  {
    $browser  = &#39;(Internet Explorer &#39; .$browser_ver. &#39;) Maxthon&#39;;
    $browser_ver = &#39;&#39;;
  }
  elseif (preg_match(&#39;/Opera[\s|\/]([^\s]+)/i&#39;, $agent, $regs))
  {
    $browser  = &#39;Opera&#39;;
    $browser_ver = $regs[1];
  }
  elseif (preg_match(&#39;/OmniWeb\/(v*)([^\s|;]+)/i&#39;, $agent, $regs))
  {
    $browser  = &#39;OmniWeb&#39;;
    $browser_ver = $regs[2];
  }
  elseif (preg_match(&#39;/Netscape([\d]*)\/([^\s]+)/i&#39;, $agent, $regs))
  {
    $browser  = &#39;Netscape&#39;;
    $browser_ver = $regs[2];
  }
  elseif (preg_match(&#39;/safari\/([^\s]+)/i&#39;, $agent, $regs))
  {
    $browser  = &#39;Safari&#39;;
    $browser_ver = $regs[1];
  }
  elseif (preg_match(&#39;/NetCaptor\s([^\s|;]+)/i&#39;, $agent, $regs))
  {
    $browser  = &#39;(Internet Explorer &#39; .$browser_ver. &#39;) NetCaptor&#39;;
    $browser_ver = $regs[1];
  }
  elseif (preg_match(&#39;/Lynx\/([^\s]+)/i&#39;, $agent, $regs))
  {
    $browser  = &#39;Lynx&#39;;
    $browser_ver = $regs[1];
  }
  if (!empty($browser))
  {
    return addslashes($browser . &#39; &#39; . $browser_ver);
  }
  else
  {
    return &#39;Unknow browser&#39;;
  }
}
echo get_user_browser();
?>
登入後複製

總結:以上就是這篇文章的全部內容,希望能對大家的學習有所幫助。

相關推薦:

PHP陣列編碼gbk與utf8互通的兩個方法實例分享

PHP針對多用戶實作更換頭像功能實例分享

PHP實作偵測網址是否能夠正常開啟的方法

以上是PHP ECShop中get_user_browser()函數的功能的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板