您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

php获取客户端浏览器以及操作系统信息的方法

2024/5/27 5:30:44发布34次查看
在较为智能的程序中,php可以获取客户端浏览器及操作系统信息,然后根据浏览器及系统类型,加载不同的页面,以提供更加个性化的服务。
下面我们就一起来学习如何使用php获取客户端浏览器与操作系统信息,有兴趣的朋友可以参考下。
1、php超级全局变量$_server数组中字段['http_user_agent'] 获取访问用户的所有信息 
以下是一个通过$_server['http_user_agent']获取到的字符串 : 
mozilla/5.0 (windows; u; windows nt 6.1; en-us) applewebkit/533.2 (khtml, like gecko) chrome/5.0.342.3 safari/533.2
2、使用正则表达式匹配以上字符串,用户的浏览器、操作系统信息。
3、php根据匹配后的字符串(用户的浏览器 操作系统信息),分配需要的css、js等,返回给用户
我的浏览器与操作系统信息: 
browser: chrome 5.0 
platform: windows 7
下面给出一个完整的例子。 
<?php
//显示访问用户的浏览器信息
echo 'browser: ' . determinebrowser($agent) . '<br>'; 
//显示访问用户的操作系统平台 
echo 'platform: ' . determineplatform($agent). '<br>';
//link:http://www.jbxue.com 
//正值表达式比对解析$_server['http_user_agent']中的字符串 获取访问用户的浏览器的信息 
function determinebrowser ($agent) { 
$browseragent=; //浏览器 
$browserversion=; //浏览器的版本 
if (ereg('msie ([0-9].[0-9]{1,2})',$agent,$version)) { 
$browserversion=$version[1]; 
$browseragent=internet explorer; 
} else if (ereg( 'opera/([0-9]{1,2}.[0-9]{1,2})',$agent,$version)) { 
$browserversion=$version[1]; 
$browseragent=opera; 
} else if (ereg( 'firefox/([0-9.]{1,5})',$agent,$version)) { 
$browserversion=$version[1]; 
$browseragent=firefox; 
}else if (ereg( 'chrome/([0-9.]{1,3})',$agent,$version)) { 
$browserversion=$version[1]; 
$browseragent=chrome; 

else if (ereg( 'safari/([0-9.]{1,3})',$agent,$version)) { 
$browseragent=safari; 
$browserversion=; 

else { 
$browserversion=; 
$browseragent=unknown; 

return $browseragent. .$browserversion; 
}
// 同理获取访问用户的浏览器的信息 
function determineplatform ($agent) { 
$browserplatform==''; 
if (eregi('win',$agent) && strpos($agent, '95')) { 
$browserplatform=windows 95; 

elseif (eregi('win 9x',$agent) && strpos($agent, '4.90')) { 
$browserplatform=windows me; 

elseif (eregi('win',$agent) && ereg('98',$agent)) { 
$browserplatform=windows 98; 

elseif (eregi('win',$agent) && eregi('nt 5.0',$agent)) { 
$browserplatform=windows 2000; 

elseif (eregi('win',$agent) && eregi('nt 5.1',$agent)) { 
$browserplatform=windows xp; 

elseif (eregi('win',$agent) && eregi('nt 6.0',$agent)) { 
$browserplatform=windows vista; 

elseif (eregi('win',$agent) && eregi('nt 6.1',$agent)) { 
$browserplatform=windows 7; 

elseif (eregi('win',$agent) && ereg('32',$agent)) { 
$browserplatform=windows 32; 

elseif (eregi('win',$agent) && eregi('nt',$agent)) { 
$browserplatform=windows nt; 
}elseif (eregi('mac os',$agent)) { 
$browserplatform=mac os; 

elseif (eregi('linux',$agent)) { 
$browserplatform=linux; 

elseif (eregi('unix',$agent)) { 
$browserplatform=unix; 

elseif (eregi('sun',$agent) && eregi('os',$agent)) { 
$browserplatform=sunos; 

elseif (eregi('ibm',$agent) && eregi('os',$agent)) { 
$browserplatform=ibm os/2; 

elseif (eregi('mac',$agent) && eregi('pc',$agent)) { 
$browserplatform=macintosh; 

elseif (eregi('powerpc',$agent)) { 
$browserplatform=powerpc; 

elseif (eregi('aix',$agent)) { 
$browserplatform=aix; 

elseif (eregi('hpux',$agent)) { 
$browserplatform=hpux; 

elseif (eregi('netbsd',$agent)) { 
$browserplatform=netbsd; 

elseif (eregi('bsd',$agent)) { 
$browserplatform=bsd; 

elseif (ereg('osf1',$agent)) { 
$browserplatform=osf1; 

elseif (ereg('irix',$agent)) { 
$browserplatform=irix; 

elseif (eregi('freebsd',$agent)) { 
$browserplatform=freebsd; 

if ($browserplatform=='') {$browserplatform = unknown; } 
return $browserplatform; 

?>
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product