亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

PHP實(shí)現(xiàn)的瀏覽器檢查類

 更新時(shí)間:2016年04月11日 11:57:23   作者:lgjlry  
這篇文章主要介紹了PHP實(shí)現(xiàn)的瀏覽器檢查類,結(jié)合實(shí)例形式詳細(xì)分析了PHP瀏覽器操作的相關(guān)技巧,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下

本文實(shí)例講述了PHP實(shí)現(xiàn)的瀏覽器檢查類。分享給大家供大家參考,具體如下:

<?php
//原作者:epsilon7
//SonyMusic([email]sonymusic@163.net[/email])
class BrowserDetector {
 var $UA = "";  //$HTTP_USER_AGENT的內(nèi)容
 var $BROWSER= "Unknown";  //瀏覽器類型
 var $PLATFORM  = "Unknown";  //操作系統(tǒng)
 var $VERSION= "";  //瀏覽器版本號(hào)
 var $MAJORVER  = "";  //瀏覽器主版本號(hào)
 var $MINORVER  = "";  //瀏覽器副版本號(hào)
 /* 構(gòu)造函數(shù)開始 */
 function BrowserDetector(){
  $this->UA  = getenv(HTTP_USER_AGENT);
  $preparens = "";
  $parens = "";
  $i = strpos($this->UA,"(");
  if ($i >= 0)  {
    $preparens = trim(substr($this->UA,0,$i));
    $parens = substr($this->UA,$i+1,strlen($this->UA));
    $j = strpos($parens,")");
    if($j>=0) {
     $parens = substr($parens,0,$j);
    }
  }
  else  {
    $preparens = $this->UA;
  }
  $browVer = $preparens;
  $token = trim(strtok($parens,";"));
  while($token)  {
    if($token=="compatible") {
    }
    elseif(preg_match("/MSIE/i","$token")) {
     $browVer = $token;
    }
    elseif(preg_match("/Opera/i","$token")) {
     $browVer = $token;
    }
    elseif(preg_match("/X11/i","$token") || preg_match("/SunOS/i","$token") || preg_match ("/Linux/i","$token")) {
     $this->PLATFORM  = "Unix";
    }
    elseif(preg_match("/Win/i","$token")) {
     $this->PLATFORM  = $token;
    }
    elseif(preg_match("/Mac/i","$token") || preg_match("/PPC/i","$token")) {
     $this->PLATFORM  = $token;
    }
    $token = strtok(";");
  }
  $msieIndex = strpos($browVer,"MSIE");
  if($msieIndex >= 0)  {
    $browVer = substr($browVer,$msieIndex,strlen($browVer));
  }
  $leftover  = "";
  if(substr($browVer,0,strlen("Mozilla")) == "Mozilla")  {
    $this->BROWSER = "Netscape";
    $leftover=substr($browVer,strlen("Mozilla")+1,strlen($browVer));
  }
  elseif(substr($browVer,0,strlen("Lynx")) == "Lynx")  {
    $this->BROWSER = "Lynx";
    $leftover=substr($browVer,strlen("Lynx")+1,strlen($browVer));
  }
  elseif(substr($browVer,0,strlen("MSIE")) == "MSIE") {
    $this->BROWSER = "IE";
    $leftover=substr($browVer,strlen("MSIE")+1,strlen($browVer));
  }
  elseif(substr($browVer,0,strlen("Microsoft Internet Explorer")) == "Microsoft Internet Explorer")  {
    $this->BROWSER = "IE";
    $leftover=substr($browVer,strlen("Microsoft Internet Explorer")+1,strlen($browVer));
  }
  elseif(substr($browVer,0,strlen("Opera")) == "Opera")  {
    $this->BROWSER = "Opera";
    $leftover=substr($browVer,strlen("Opera")+1,strlen($browVer));
  }
  $leftover = trim($leftover);
  $i=strpos($leftover," ");
  if($i > 0)  {
    $this->VERSION = substr($leftover,0,$i);
  }
  else  {
    $this->VERSION = $leftover;
  }
  $j = strpos($this->VERSION,".");
  if($j >= 0)  {
    $this->MAJORVER = substr($this->VERSION,0,$j);
    $this->MINORVER = substr($this->VERSION,$j+1,strlen($this->VERSION));
  }
  else  {
    $this->MAJORVER = $this->VERSION;
  }
 }
}
//測(cè)試程序開始
$test=new browserdetector;
echo $test->UA."<br>";
echo $test->BROWSER."<br>";
echo $test->PLATFORM."<br>";
echo $test->VERSION."<br>";
echo $test->MAJORVER."<br>";
echo $test->MINORVER."<br>";
?>

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php文件操作總結(jié)》、《PHP運(yùn)算與運(yùn)算符用法總結(jié)》、《PHP網(wǎng)絡(luò)編程技巧總結(jié)》、《PHP基本語法入門教程》、《php操作office文檔技巧總結(jié)(包括word,excel,access,ppt)》、《php日期與時(shí)間用法總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總

希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • php下檢測(cè)字符串是否是utf8編碼的代碼

    php下檢測(cè)字符串是否是utf8編碼的代碼

    給一個(gè)字符串,怎么判斷它是什么編碼呢?php有一個(gè)函數(shù):mb_detect_encoding。不過這個(gè)東西需要有mb_string庫,不是到處都能用的。
    2008-06-06
  • 基于PHP實(shí)現(xiàn)圖片防盜鏈

    基于PHP實(shí)現(xiàn)圖片防盜鏈

    這篇文章主要為大家詳細(xì)介紹了如何基于PHP實(shí)現(xiàn)一個(gè)簡(jiǎn)單的圖片防盜鏈,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-12-12
  • php不寫閉合標(biāo)簽的好處

    php不寫閉合標(biāo)簽的好處

    一開始寫PHP代碼的時(shí)候,我是要寫PHP閉合標(biāo)簽的,之后這幾年,習(xí)慣改了,不再寫PHP標(biāo)簽了。
    2014-03-03
  • CodeIgniter生成網(wǎng)站sitemap地圖的方法

    CodeIgniter生成網(wǎng)站sitemap地圖的方法

    用CodeIgniter只需要三步就可以生成網(wǎng)站sitemap地圖,方法很簡(jiǎn)單,大家可以參考一下
    2013-11-11
  • PHP unset函數(shù)原理及使用方法解析

    PHP unset函數(shù)原理及使用方法解析

    這篇文章主要介紹了PHP unset函數(shù)原理及使用方法解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • apache php模塊整合操作指南

    apache php模塊整合操作指南

    本文將詳細(xì)介紹Linux下Apache、php3、MySQL的整合的相關(guān)問題的解決方法,需要的朋友可以參考下
    2012-11-11
  • PHP簡(jiǎn)單計(jì)算兩個(gè)時(shí)間差的方法示例

    PHP簡(jiǎn)單計(jì)算兩個(gè)時(shí)間差的方法示例

    這篇文章主要介紹了PHP簡(jiǎn)單計(jì)算兩個(gè)時(shí)間差的方法,結(jié)合具體實(shí)例形式分析了php日期與時(shí)間的轉(zhuǎn)換及數(shù)學(xué)運(yùn)算相關(guān)操作技巧,需要的朋友可以參考下
    2017-06-06
  • PHP抽象類基本用法示例

    PHP抽象類基本用法示例

    這篇文章主要介紹了PHP抽象類基本用法,結(jié)合實(shí)例形式分析了php抽象類的概念、原理、定義、使用方法及相關(guān)操作注意事項(xiàng),代碼注釋包含較為詳盡的說明信息,需要的朋友可以參考下
    2018-12-12
  • PHP學(xué)習(xí) 變量使用總結(jié)

    PHP學(xué)習(xí) 變量使用總結(jié)

    PHP學(xué)習(xí) 變量使用總結(jié),學(xué)習(xí)php的朋友可以參考下。
    2011-03-03
  • php之CodeIgniter學(xué)習(xí)筆記

    php之CodeIgniter學(xué)習(xí)筆記

    本篇文章是對(duì)php中的CodeIgniter進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06

最新評(píng)論