php 客户端浏览器信息_php获得客户端浏览器的名称及版本

看到ecshop中有这么一个函数get_user_browser(),获取浏览器的名称和版本。虽然获取的信息只是简单的一些信息,但是还是很实用。其原理主要是通过$_SERVER['HTTP_USER_AGENT']获得浏览器信息,再用正则进行比对得出浏览器的信息。

以下是各浏览器运行的效果:

0a91bd9187e9ca3c0a0658c18ac6d259.png

2ef4f2080d50c5f82a0756e53c756946.png

5061bb315fb92819a6b2e65e8d56523d.png

源码如下:

function get_user_browser()

{

if (empty($_SERVER['HTTP_USER_AGENT']))

{

return '';

}

$agent       = $_SERVER['HTTP_USER_AGENT'];

$browser     = '';

$browser_ver = '';

if (preg_match('/MSIE\s([^\s|;]+)/i', $agent, $regs))

{

$browser     = 'Internet Explorer';

$browser_ver = $regs[1];

}

elseif (preg_match('/FireFox\/([^\s]+)/i', $agent, $regs))

{

$browser     = 'FireFox';

$browser_ver = $regs[1];

}

elseif (preg_match('/Maxthon/i', $agent, $regs))

{

$browser     = '(Internet Explorer ' .$browser_ver. ') Maxthon';

$browser_ver = '';

}

elseif (preg_match('/Opera[\s|\/]([^\s]+)/i', $agent, $regs))

{

$browser     = 'Opera';

$browser_ver = $regs[1];

}

elseif (preg_match('/OmniWeb\/(v*)([^\s|;]+)/i', $agent, $regs))

{

$browser     = 'OmniWeb';

$browser_ver = $regs[2];

}

elseif (preg_match('/Netscape([\d]*)\/([^\s]+)/i', $agent, $regs))

{

$browser     = 'Netscape';

$browser_ver = $regs[2];

}

elseif (preg_match('/safari\/([^\s]+)/i', $agent, $regs))

{

$browser     = 'Safari';

$browser_ver = $regs[1];

}

elseif (preg_match('/NetCaptor\s([^\s|;]+)/i', $agent, $regs))

{

$browser     = '(Internet Explorer ' .$browser_ver. ') NetCaptor';

$browser_ver = $regs[1];

}

elseif (preg_match('/Lynx\/([^\s]+)/i', $agent, $regs))

{

$browser     = 'Lynx';

$browser_ver = $regs[1];

}

if (!empty($browser))

{

return addslashes($browser . ' ' . $browser_ver);

}

else

{

return 'Unknow browser';

}

}

echo get_user_browser();

?>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值