Chinaunix首页 | 论坛 | 博客
  • 博客访问: 17912306
  • 博文数量: 7460
  • 博客积分: 10434
  • 博客等级: 上将
  • 技术积分: 78178
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-02 22:54
文章分类

全部博文(7460)

文章存档

2011年(1)

2009年(669)

2008年(6790)

分类:

2008-05-29 09:44:07

php取得客户端信息(浏览器/IP/操作系统)代码

以下为引用的内容:
php class clientGetObj
{
     function 
getBrowse
()
     {
     global 
$_SERVER
;
     
$Agent $_SERVER['HTTP_USER_AGENT'
];

www~phperz~com


     
$browser ''
;
     
$browserver ''
;
     
$Browser = array('Lynx''MOSAIC''AOL''Opera''JAVA''MacWeb''WebExplorer''OmniWeb'
); www~phperz~com
     for(
$i 0$i <= 7$i 
++){
         if(
strpos($Agent$Browsers[$i
])){
             
$browser $Browsers[$i
]; php程序员站
             
$browserver ''
;
         }
     }
     if(
ereg('Mozilla'$Agent) && !ereg('MSIE'$Agent
)){
         
$temp explode('('$Agent
); php程序员之家
         
$Part $temp[0
];
         
$temp explode('/'$Part
);
         
$browserver $temp[1
];
         
$temp explode(' '$browserver
);
         
$browserver $temp[0
];
         
$browserver preg_replace('/([d.]+)/''1'$browserver
);
         
$browserver $browserver
;
         
$browser 'Netscape Navigator'
;

phperz~com


     }
     if(
ereg('Mozilla'$Agent) && ereg('Opera'$Agent
)) {
         
$temp explode('('$Agent
);
         
$Part $temp[1
];

         
$temp explode(')'$Part
);
         
$browserver $temp[1
];
         
$temp explode(' '$browserver
); phperz~com
         
$browserver $temp[2
];
         
$browserver preg_replace('/([d.]+)/''1'$browserver
);
         
$browserver $browserver
;
         
$browser 'Opera'
;

phperz.com


     }
     if(
ereg('Mozilla'$Agent) && ereg('MSIE'$Agent
)){
         
$temp explode('('$Agent
);
         
$Part $temp[1
];
         
$temp explode(';'$Part
);
         
$Part $temp[1
];
         
$temp explode(' '$Part
);
         
$browserver $temp[2
];

         
$browserver preg_replace('/([d.]+)/','1',$browserver
);
         
$browserver $browserver
;
         
$browser 'Internet Explorer'
;
     }
     if(
$browser != ''
){
phperz.com

         
$browseinfo $browser.' '.$browserver
;
     } else {
         
$browseinfo false
;
     }
     return 
$browseinfo
;
     }


     function 
getIP 
()

phperz~com


     {
     global 
$_SERVER
;
     if (
getenv('HTTP_CLIENT_IP'
)) {
         
$ip getenv('HTTP_CLIENT_IP'
);
     } else if (
getenv('HTTP_X_FORWARDED_FOR'
)) {
         
$ip getenv('HTTP_X_FORWARDED_FOR'
); phperz.com
     } else if (
getenv('REMOTE_ADDR'
)) {
         
$ip getenv('REMOTE_ADDR'
);
     } else {
         
$ip $_SERVER['REMOTE_ADDR'
];
     }
     return 
$ip
; www~phperz~com
     }


     function 
getOS 
()
     {
     global 
$_SERVER
;
     
$agent $_SERVER['HTTP_USER_AGENT'
];
     
$os false
;
     if (
eregi('win'$agent) && strpos($agent'95'
)){
php程序员站

         
$os 'Windows 95'
;
     }
     else if (
eregi('win 9x'$agent) && strpos($agent'4.90'
)){
         
$os 'Windows ME'
; phperz.com
     }
     else if (
eregi('win'$agent) && ereg('98'$agent
)){
         
$os 'Windows 98'
;
     }
     else if (
eregi('win'$agent) && eregi('nt 5.1'$agent
)){
phperz.com

         
$os 'Windows XP'
;
     }
     else if (
eregi('win'$agent) && eregi('nt 5'$agent
)){
         
$os 'Windows 2000'
;
     }

phperz~com


     else if (
eregi('win'$agent) && eregi('nt'$agent
)){
         
$os 'Windows NT'
;
     }
     else if (
eregi('win'$agent) && ereg('32'$agent
)){ phperz.com
         
$os 'Windows 32'
;
     }
     else if (
eregi('linux'$agent
)){
         
$os 'Linux'
;
     }
     else if (
eregi('unix'$agent
)){ php程序员站
         
$os 'Unix'
;
     }
     else if (
eregi('sun'$agent) && eregi('os'$agent
)){
         
$os 'SunOS'
;
     }
     else if (
eregi('ibm'$agent) && eregi('os'$agent
)){
         
$os 'IBM OS/2'
;
     }
     else if (
eregi('Mac'$agent) && eregi('PC'$agent
)){ php程序员之家
         
$os 'Macintosh'
;
     }
     else if (
eregi('PowerPC'$agent
)){
         
$os 'PowerPC'
;
     }
     else if (
eregi('AIX'$agent
)){ php程序员站
         
$os 'AIX'
;
     }
     else if (
eregi('HPUX'$agent
)){
         
$os 'HPUX'
;
     }
     else if (
eregi('NetBSD'$agent
)){ www~phperz~com
         
$os 'NetBSD'
;
     }
     else if (
eregi('BSD'$agent
)){
         
$os 'BSD'
;
     }
     else if (
ereg('OSF1'$agent
)){ phperz.com
         
$os 'OSF1'
;
     }
     else if (
ereg('IRIX'$agent
)){
         
$os 'IRIX'
;
     }
     else if (
eregi('FreeBSD'$agent
)){ phperz.com
         
$os 'FreeBSD'
;
     }
     else if (
eregi('teleport'$agent
)){
         
$os 'teleport'
;
     }
     else if (
eregi('flashget'$agent
)){


         
$os 'flashget'
;
     }
     else if (
eregi('webzip'$agent
)){
         
$os 'webzip'
;
     }
     else if (
eregi('offline'$agent
)){ php程序员站
         
$os 'offline'
;
     }
     else {
         
$os 'Unknown'
;
     }
     return 
$os
;
     }


}
?>
phperz~com

使用方法: php程序员之家

1.将以上框内代码另存为getinfo.php

2.在需要地页面引入getinfo.php
 

3. 使用之前定义的类

以下为引用的内容:
$code = new clientGetObj;
$str1 = $code->getBrowse();//浏览器:
$str2 = $code->getIP();//IP地址:
$str3 = $code->getOS();//操作系统:
echo "目标浏览器:".$str1." OS:".$str3." IP:".$str2;
?>

阅读(393) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~