女性朋友,您是否有痛經、量少等月經不調情況?,推薦您使用【儂顏益母湯】,解決您一切煩惱!

PHP判斷手機瀏覽器User Agent,根據UA跳轉到不同網頁

用php判斷一個客戶端是手機還是電腦

時間:2011-06-17 10:10來源:www.ogmgrw.tw 作者:966266瀏覽器評測網 點擊:

如何用php判斷一個客戶端是手機還是電腦?其實很簡單,開發人員都知道,通過瀏覽器訪問網站時,瀏覽器都會向服務器發送UA,即User Agent(用戶代理)。不同瀏覽器、同一瀏覽器的不同版本、手機瀏覽器、電腦端的瀏覽器的UA都是不一樣的。我們只要寫代程序獲取這段UA,然后判斷UA是什么,然后就可以區分出是手機還是電腦了。

下面,通過PHP代碼來判斷訪客的瀏覽器UA是否為手機瀏覽器,然后自動跳轉到相應的頁面:

	<?php

	function is_mobile(){

	     //正則表達式,批配不同手機瀏覽器UA關鍵詞。

	     $regex_match="/(nokia|iphone|android|motorola|^mot\-|softbank|foma|docomo|kddi|up\.browser|up\.link|";

	     $regex_match.="htc|dopod|blazer|netfront|helio|hosin|huawei|novarra|CoolPad|webos|techfaith|palmsource|";

	     $regex_match.="blackberry|alcatel|amoi|ktouch|nexian|samsung|^sam\-|s[cg]h|^lge|ericsson|philips|sagem|wellcom|bunjalloo|maui|";

	     $regex_match.="symbian|smartphone|midp|wap|phone|windows ce|iemobile|^spice|^bird|^zte\-|longcos|pantech|gionee|^sie\-|portalmmm|";

	     $regex_match.="jig\s browser|hiptop|^ucweb|^benq|haier|^lct|opera\s*mobi|opera\*mini|320x320|240x320|176x220";

	     $regex_match.=")/i";

	    

	     return isset($_SERVER['HTTP_X_WAP_PROFILE']) or isset($_SERVER['HTTP_PROFILE']) or preg_match($regex_match, strtolower($_SERVER['HTTP_USER_AGENT'])); //如果UA中存在上面的關鍵詞則返回真。

	}

	   

	     if(is_mobile()) {

	     //如果為真,則進行WAP頁面。

	       header( "HTTP/1.1 301 Moved Permanently");  

	       header("Location: http://www.ogmgrw.tw/wap.php");

	     }else {    

	     //如果為假,則進行WEB頁面。

	        header( "HTTP/1.1 301 Moved Permanently"); 

	        header("Location: http://www.ogmgrw.tw/"); 

	     }

	?>

代碼測試頁面:判斷是否為手機瀏覽器,然后跳轉到不同頁面

上面整個代碼保存為PHP文件調用即可。自定義函數中包括了大部分手機瀏覽器UA,如果不全,可自行再添加。

如果需要測試本代碼,可以修改偽造瀏覽器UA的方式來模擬手機瀏覽器來測試,也可以通過一些瀏覽器擴展插件來修改。

 

相關瀏覽器UA技術知識

 

本文標簽:    
四川快乐12胆拖计算表