使用php判斷瀏覽器的類型和語言的函數(shù)代碼
我們經(jīng)??吹接幸恍┚W(wǎng)站上面會顯示出你目前使用的瀏覽器類型和使用的語言,比如顯示的是:您使用的瀏覽器為 IE6,繁體字。看起來是不是很炫。
其實這樣的功能不難實現(xiàn),無非就是判斷瀏覽器的類型和語言,如果用JS來做應(yīng)該很簡單,這里我們看看用PHP來怎么實現(xiàn)這樣的功能,既然是在做判斷,就可以用PHP的條件語句if..else來判斷實現(xiàn)。
判斷瀏覽器類型:
<?php echo $_SERVER["HTTP_USER_AGENT"]; ?>
判斷瀏覽器語言:
<?php echo $_SERVER["HTTP_ACCEPT_LANGUAGE"]; ?>
判斷瀏覽器類型的具體程序如下:
<?php
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"];
?>
判斷瀏覽器語言的具體程序如下:
<?php
$lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 4); //只取前4位,這樣只判斷最優(yōu)先的語言。如果取前5位,可能出現(xiàn)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"];
?>
小結(jié):判斷瀏覽器類型主要是靠分析_SERVER["HTTP_USER_AGENT"]的內(nèi)容,而分析瀏覽器語言則是分析_SERVER["HTTP_ACCEPT_LANGUAGE"]。
原理:因為瀏覽器在和服務(wù)器連接時候都會先發(fā)送一些包含自己信息的內(nèi)容(瀏覽器類型、語言)。所以這里我們主要分析的是_SERVER["HTTP_USER_AGENT"](瀏覽器類型)和_SERVER["HTTP_ACCEPT_LANGUAGE"](瀏覽器語言)。我們所要做的就是把這些內(nèi)容讀出來,然后用strpos或者preg_match函數(shù)來對比就可以了,根據(jù)程序的設(shè)計我們還可以將頁面設(shè)計得更漂亮一些出來。
- PHP獲取用戶的瀏覽器與操作系統(tǒng)信息的代碼
- PHP下利用header()函數(shù)設(shè)置瀏覽器緩存的代碼
- php禁止直接從瀏覽器輸入地址訪問.php文件的方法
- 使用PHP curl模擬瀏覽器抓取網(wǎng)站信息
- PHP計劃任務(wù)之關(guān)閉瀏覽器后仍然繼續(xù)執(zhí)行的函數(shù)
- PHP限制頁面只能在微信自帶瀏覽器訪問的代碼
- PHP實現(xiàn)提取一個圖像文件并在瀏覽器上顯示的代碼
- PHP curl模擬瀏覽器采集阿里巴巴的實現(xiàn)代碼
- php中修改瀏覽器的User-Agent來偽裝你的瀏覽器和操作系統(tǒng)
- php獲取訪問者瀏覽頁面的瀏覽器類型
相關(guān)文章
在PHP上顯示JFreechart畫的統(tǒng)計圖方法
在JSP上的servlet能完全的顯示出JFreechart畫的統(tǒng)計圖,但是和其他語言混合運(yùn)用就不能顯示了,下面為大家介紹下如何在PHP上顯示JFreechart2013-11-11用php或asp創(chuàng)建網(wǎng)頁桌面快捷方式的代碼
上傳到網(wǎng)站,shortcut.php 就會有提示下載一個名為 張楚網(wǎng)站.urll文件,保存在本地就是一個快捷方式!2010-03-03php用數(shù)組返回?zé)o限分類的列表數(shù)據(jù)的代碼
php自定義函數(shù)之用數(shù)組返回?zé)o限分類的列表數(shù)據(jù),這樣的實現(xiàn)可以提高執(zhí)行的效率不要每次都從數(shù)據(jù)庫讀取數(shù)據(jù)。2010-08-08解決dede生成靜態(tài)頁和動態(tài)頁轉(zhuǎn)換的一些問題,及火車采集入庫生成動態(tài)的辦法
解決dede生成靜態(tài)頁和動態(tài)頁轉(zhuǎn)換的一些問題,及火車采集入庫生成動態(tài)的辦法...2007-03-03PHP+ajax實現(xiàn)上傳、刪除、修改單張圖片及后臺處理邏輯操作詳解
這篇文章主要介紹了PHP+ajax實現(xiàn)上傳、刪除、修改單張圖片及后臺處理邏輯操作,結(jié)合實例形式詳細(xì)分析了前臺ajax提交圖片上傳、刪除、修改以及后臺PHP邏輯處理相關(guān)操作技巧與注意事項,需要的朋友可以參考下2020-02-02Laravel的下載以及使用composer來安裝debugbar擴(kuò)展包圖文教程
這篇文章主要介紹了Laravel的下載以及使用composer來安裝debugbar擴(kuò)展包圖文教程,圖文講解的比較清晰,有不太會的同學(xué)可以研究下2021-01-01