PHP如何判断用户浏览器类型与语言

用PHP判断浏览器类型其实很简单。因为浏览器在和服务器连接时候都会先发送一些包含自己信息的内容(浏览器类型、语言等)。

这里我们主要分析的是_SERVER“HTTP_USER_AGENT”和_SERVER“HTTP_ACCEPT_LANGUAGE”。我们所要做的就是把这些内容读出来,然后用strpos或者preg_match函数来对比就可以了。

For example:

    header("content-type:text/html;charset=utf-8");


    if(strpos($_SERVER["HTTP_USER_AGENT"],"MSIE 8.0")){
        echo "Internet Explorer 8.0";
    }else if(strpos($_SERVER["HTTP_USER_AGENT"], "MSIE 7.0")){
        echo "Internet Explorer 7.0";
    }else if(strpos($_SERVER["HTTP_USER_AGENT"],"MSIE 6.0")){
        echo "Internet Explorer 6.0";
    }else if(strpos($_SERVER["HTTP_USER_AGENT"],"Firefox/3")){
        echo "Firefox 3";
    }else if(strpos($_SERVER["HTTP_USER_AGENT"],"Firefox/2")){
        echo "Firefox 2";
    }else if(strpos($_SERVER["HTTP_USER_AGENT"],"Chrome")){
        echo "google Chrome";
    }else if(strpos($_SERVER["HTTP_USER_AGENT"],"Safari")){
        echo "Safari";
    }else if(strpos($_SERVER["HTTP_USER_AGENT"],"Opera")){
        echo "Opera";
    }else{
        echo $_SERVER["HTTP_USER_AGENT"];
    }

判断浏览器语言的具体程序如下:

    $lang=substr($_SERVER["HTTP_ACCEPT_LANGUAGE"],0,4);

    if(preg_match("/zh-c/i",$lang)){
        echo "简体中文";
    }else if(preg_match("/zh/i",$lang)){
        echo "繁体中文";
    }else if(preg_match("/en/i",$lang)){
        echo "English";
    }else if(preg_match("/fr/i",$lang)){
        echo "French";
    }else if(preg_match("/de/i",$lang)){
        echo "German";
    }else if(preg_match("/jp/i",$lang)){
        echo "Japanse";
    }else if(preg_match("/ko/i",$lang)){
        echo "Korean";
    }else if(preg_match("/es/i",$lang)){
        echo "Spanish";
    }else if(preg_match("/sv/i",$lang)){
        echo "Swedish";
    }else{
        echo $_SERVER["HTTP_ACCEPT_LANGUAGE"];
    }

小结:判断浏览器类型主要是靠分析_SERVER[“HTTP_USER_AGENT”]的内容,而分析浏览器语言则是分析_SERVER[“HTTP_ACCEPT_LANGUAGE”]。

阅读更多
文章标签: 函数
个人分类: PHP
上一篇chr()函数
下一篇shuffle() 函数
想对作者说点什么? 我来说一句

php判断浏览器和操作系统类型

2009年08月12日 4KB 下载

没有更多推荐了,返回首页

关闭
关闭