php取得客户端信息(浏览器/IP/操作系统)
时间:2007-06-10 来源:sdqdgaopeng
PHP代码:
使用方法:
1.将以上框内代码另存为getinfo.php
2.在需要地页面引入getinfo.php
?
PHP代码:
3. 使用之前定义的类
PHP代码:
- <?php
- class clientGetObj
- {
- function getBrowse()
- {
- global $_SERVER;
- $Agent = $_SERVER['HTTP_USER_AGENT'];
- $browser = '';
- $browserver = '';
- $Browser = array('Lynx', 'MOSAIC', 'AOL', 'Opera', 'JAVA', 'MacWeb', 'WebExplorer', 'OmniWeb');
- for($i = 0; $i <= 7; $i ++){
- if(strpos($Agent, $Browsers[$i])){
- $browser = $Browsers[$i];
- $browserver = '';
- }
- }
- if(ereg('Mozilla', $Agent) && !ereg('MSIE', $Agent)){
- $temp = explode('(', $Agent);
- $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';
- }
- if(ereg('Mozilla', $Agent) && ereg('Opera', $Agent)) {
- $temp = explode('(', $Agent);
- $Part = $temp[1];
- $temp = explode(')', $Part);
- $browserver = $temp[1];
- $temp = explode(' ', $browserver);
- $browserver = $temp[2];
- $browserver = preg_replace('/([d.]+)/', '1', $browserver);
- $browserver = $browserver;
- $browser = 'Opera';
- }
- 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 != ''){
- $browseinfo = $browser.' '.$browserver;
- } else {
- $browseinfo = false;
- }
- return $browseinfo;
- }
- function getIP ()
- {
- 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');
- } else if (getenv('REMOTE_ADDR')) {
- $ip = getenv('REMOTE_ADDR');
- } else {
- $ip = $_SERVER['REMOTE_ADDR'];
- }
- return $ip;
- }
- function getOS ()
- {
- global $_SERVER;
- $agent = $_SERVER['HTTP_USER_AGENT'];
- $os = false;
- if (eregi('win', $agent) && strpos($agent, '95')){
- $os = 'Windows 95';
- }
- else if (eregi('win 9x', $agent) && strpos($agent, '4.90')){
- $os = 'Windows ME';
- }
- else if (eregi('win', $agent) && ereg('98', $agent)){
- $os = 'Windows 98';
- }
- else if (eregi('win', $agent) && eregi('nt 5.1', $agent)){
- $os = 'Windows XP';
- }
- else if (eregi('win', $agent) && eregi('nt 5', $agent)){
- $os = 'Windows 2000';
- }
- else if (eregi('win', $agent) && eregi('nt', $agent)){
- $os = 'Windows NT';
- }
- else if (eregi('win', $agent) && ereg('32', $agent)){
- $os = 'Windows 32';
- }
- else if (eregi('linux', $agent)){
- $os = 'Linux';
- }
- else if (eregi('unix', $agent)){
- $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)){
- $os = 'Macintosh';
- }
- else if (eregi('PowerPC', $agent)){
- $os = 'PowerPC';
- }
- else if (eregi('AIX', $agent)){
- $os = 'AIX';
- }
- else if (eregi('HPUX', $agent)){
- $os = 'HPUX';
- }
- else if (eregi('NetBSD', $agent)){
- $os = 'NetBSD';
- }
- else if (eregi('BSD', $agent)){
- $os = 'BSD';
- }
- else if (ereg('OSF1', $agent)){
- $os = 'OSF1';
- }
- else if (ereg('IRIX', $agent)){
- $os = 'IRIX';
- }
- else if (eregi('FreeBSD', $agent)){
- $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)){
- $os = 'offline';
- }
- else {
- $os = 'Unknown';
- }
- return $os;
- }
- }?>
使用方法:
1.将以上框内代码另存为getinfo.php
2.在需要地页面引入getinfo.php
?
PHP代码:
- <?php incude('getinfo.php'); ?>
3. 使用之前定义的类
PHP代码:
- <?php
- $code = new clientGetObj;
- $str1 = $code->getBrowse();//浏览器:
- $str2 = $code->getIP();//IP地址:
- $str3 = $code->getOS();//操作系统:
- echo "目标浏览器:".$str1." OS:".$str3." IP:".$str2;
- ?>
相关阅读 更多 +