欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

php 获取浏览器名称版本实例程序

程序员文章站 2022-06-16 07:57:18
...
获取浏览器版本在php中直接使用HTTP_USER_AGENT就可以了,但是要具体判断是那个浏览器,什么版本我们需要一个个去判断了,实例代码如下:
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('/Chrome\/([\d.]+)/i', $agent, $regs)) {
        $browser = 'Chrome';
        $browser_ver = $regs[1];
    } elseif (preg_match('/safari\/([^\s]+)/i', $agent, $regs)) {
        $browser = 'Safari';
        $browser_ver = $regs[1];
    } elseif (preg_match('/NetCaptors([^\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';
    }
}

注意:chrome使用了webkit的部分代码,webkit是苹果开发的,所以需要将chrome的识别放在safari前面。

判断是否为蜘蛛:

function is_spider($record = true)    //判断是否为蜘蛛 
{ 
    static $spider = NULL; 
    if ($spider !== NULL) 
    { 
        return $spider;        // 
    } 
    if (empty($_SERVER['HTTP_USER_AGENT'])) 
    { 
        $spider = ''; 
        return ''; 
    } 
    $searchengine_bot = array( 
        'googlebot', 
        'mediapartners-google', 
        'baidu', 
        'msnbot', 
        'yodaobot', 
        'yahoo! slurp;', 
        'yahoo! slurp china;', 
        'iaskspider', 
        'sogou web spider', 
        'sogou push spider' 
        'haosou' 
    ); 
    $searchengine_name = array( 
        'GOOGLE', 
        'GOOGLE ADSENSE', 
        'BAIDU', 
        'MSN', 
        'YODAO', 
        'YAHOO', 
        'Yahoo China', 
        'IASK', 
        'SOGOU', 
        'SOGOU' 
        'HAOSOU' 
    ); 
    $spider = strtolower($_SERVER['HTTP_USER_AGENT']);    //将用户浏览器信息转成小写 
    foreach ($searchengine_bot AS $key => $value) 
    { 
        if (strpos($spider, $value) !== false)                    //绝对不等于,避免字符串出现为止为0的这种情况 
        { 
            $spider = $searchengine_name[$key];            //返回对应的seo/seo.html" target="_blank">搜索引擎名 
            return $spider; 
        } 
    } 
    $spider = ''; 
    return ''; 
}


文章地址:

转载随意^^请带上本文地址!