- //判斷瀏覽器類型
- echo $_SERVER["HTTP_USER_AGENT"];
- //判斷瀏覽器語言
- echo $_SERVER["HTTP_ACCEPT_LANGUAGE"];
- ?>
複製代碼
下面是兩個完整的樣本,分別判斷瀏覽器類型、瀏覽器語言。1、判斷瀏覽器類型
- 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"];
- ?>
複製代碼
2、判斷瀏覽器語言
- $lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 4); //只取前4位,這樣只判斷最優先的語言。如果取前5位,可能出現en,zh的情況,影響判斷。
- 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 "Japanese";
- 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"];
- /*@ http://bbs.it-home.org */
- ?>
複製代碼
從以上代碼,可以看到php判斷瀏覽器類型,主要是藉助_SERVER["HTTP_USER_AGENT"],而分析瀏覽器語言則是使用_SERVER["HTTP_ACCEPT_LANGUAGE"]。
從原理上來講,瀏覽器在與伺服器串連時總會先發送一些包括(瀏覽器類型、語言)類的資訊。我們可以藉助php全域變更$_SERVER,諸如_SERVER["HTTP_USER_AGENT"](瀏覽器類型)和_SERVER["HTTP_ACCEPT_LANGUAGE"](瀏覽器語言)來擷取到相關資訊,然後用strpos或者preg_match函數來對比就可以了。
好了,關於php判斷瀏覽器類型、瀏覽器語言等的內容就介紹到這了。您可能感興趣的文章:PHP判斷瀏覽器類型的代碼php 擷取訪問者瀏覽器的代碼php擷取用戶端瀏覽器與作業系統資訊的方法 |