首页 > 后端开发 > php教程 > 一个浏览器检查类_PHP

一个浏览器检查类_PHP

WBOY
发布: 2016-06-01 12:28:53
原创
781 人浏览过

//原作者: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."
";
echo $test->BROWSER."
";
echo $test->PLATFORM."
";
echo $test->VERSION."
";
echo $test->MAJORVER."
";
echo $test->MINORVER."
";
?>

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板