一个浏览器检查类

  <?php
  //原作者:epsilon7
  //SonyMusic(sonymusic 163.net)
  class BrowserDetector{
  var$UA="";//$HTTP_USER_AGENT的内容
  var$BROWSER="Unknown";//浏览器类型
  var$PLATFORM="Unknown";//操作系统
  var$VERSION="";//浏览器版本号
  var$MAJORVER="";//浏览器主版本号
  var$MINORVER="";//浏览器副版本号
  /*构造函数开始*/
  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;
  }
  }
  }
  //测试程序开始
  $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>";
  ?>