Heim > Backend-Entwicklung > PHP-Tutorial > php 获取浏览器名称版本实例程序_PHP教程

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

WBOY
Freigeben: 2016-07-13 16:57:24
Original
848 Leute haben es durchsucht

获取浏览器版本在php中直接使用HTTP_USER_AGENT就可以了,但是要具体判断是那个浏览器,什么版本我们需要一个个去判断了,

例1

 代码如下 复制代码

function get_user_browser() {
 if (empty($_SERVER['HTTP_USER_AGENT'])) {
  return '';
 }

 $agent = $_SERVER['HTTP_USER_AGENT'];
 $browser = '';
 $browser_ver = '';

 if (preg_match('/MSIEs([^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('/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';
 }
}

实例

 代码如下 复制代码

function get_user_browser()
{
    if (empty($_SERVER['HTTP_USER_AGENT']))
    {    //当浏览器没有发送访问者的信息的时候
        return '';
    }

    $agent       = $_SERVER['HTTP_USER_AGENT'];   
    $browser     = '';
    $browser_ver = '';

    if (preg_match('/MSIEs([^s|;]+)/i', $agent, $regs))
    {
        $browser     = 'Internet Explorer';    //当匹配到了MSIE 的时候,取得数字的那一部分房在数组$regs里
        $browser_ver = $regs[1];
    }
    elseif (preg_match('/FireFox/([^s]+)/i', $agent, $regs))
    {                           
        $browser     = 'FireFox';                //当匹配到了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('/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';
    }
}


判断是否为蜘蛛

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',
        'baiduspider+',
        'msnbot',
        'yodaobot',
        'yahoo! slurp;',
        'yahoo! slurp china;',
        'iaskspider',
        'sogou web spider',
        'sogou push spider'
    );

    $searchengine_name = array(
        'GOOGLE',
        'GOOGLE ADSENSE',
        'BAIDU',
        'MSN',
        'YODAO',
        'YAHOO',
        'Yahoo China',
        'IASK',
        'SOGOU',
        'SOGOU'
    );

    $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 '';
}

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/631523.htmlTechArticle获取浏览器版本在php中直接使用HTTP_USER_AGENT就可以了,但是要具体判断是那个浏览器,什么版本我们需要一个个去判断了, 例1 代码如下 复...
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage