PHP中通過HTTP_USER_AGENT判斷是否為手機(jī)移動(dòng)終端的函數(shù)代碼
更新時(shí)間:2013年02月14日 22:56:13 作者:
經(jīng)常我們需要做一些判斷是否是手機(jī)訪問的時(shí)候,然后進(jìn)行自動(dòng)跳轉(zhuǎn)操作,這是從一個(gè)PHP框架分離出來的一段判斷是否為手機(jī)移動(dòng)終端的函數(shù),分享下
有時(shí)候很實(shí)用在一些場合,留住備用吧
復(fù)制代碼 代碼如下:
function is_mobile_request()
{
$_SERVER['ALL_HTTP'] = isset($_SERVER['ALL_HTTP']) ? $_SERVER['ALL_HTTP'] : '';
$mobile_browser = '0';
if(preg_match('/(up.browser|up.link|mmp|symbian|smartphone|midp|wap|phone|iphone|ipad|ipod|android|xoom)/i', strtolower($_SERVER['HTTP_USER_AGENT'])))
$mobile_browser++;
if((isset($_SERVER['HTTP_ACCEPT'])) and (strpos(strtolower($_SERVER['HTTP_ACCEPT']),'application/vnd.wap.xhtml+xml') !== false))
$mobile_browser++;
if(isset($_SERVER['HTTP_X_WAP_PROFILE']))
$mobile_browser++;
if(isset($_SERVER['HTTP_PROFILE']))
$mobile_browser++;
$mobile_ua = strtolower(substr($_SERVER['HTTP_USER_AGENT'],0,4));
$mobile_agents = array(
'w3c ','acs-','alav','alca','amoi','audi','avan','benq','bird','blac',
'blaz','brew','cell','cldc','cmd-','dang','doco','eric','hipt','inno',
'ipaq','java','jigs','kddi','keji','leno','lg-c','lg-d','lg-g','lge-',
'maui','maxo','midp','mits','mmef','mobi','mot-','moto','mwbp','nec-',
'newt','noki','oper','palm','pana','pant','phil','play','port','prox',
'qwap','sage','sams','sany','sch-','sec-','send','seri','sgh-','shar',
'sie-','siem','smal','smar','sony','sph-','symb','t-mo','teli','tim-',
'tosh','tsm-','upg1','upsi','vk-v','voda','wap-','wapa','wapi','wapp',
'wapr','webc','winw','winw','xda','xda-'
);
if(in_array($mobile_ua, $mobile_agents))
$mobile_browser++;
if(strpos(strtolower($_SERVER['ALL_HTTP']), 'operamini') !== false)
$mobile_browser++;
// Pre-final check to reset everything if the user is on Windows
if(strpos(strtolower($_SERVER['HTTP_USER_AGENT']), 'windows') !== false)
$mobile_browser=0;
// But WP7 is also Windows, with a slightly different characteristic
if(strpos(strtolower($_SERVER['HTTP_USER_AGENT']), 'windows phone') !== false)
$mobile_browser++;
if($mobile_browser>0)
return true;
else
return false;
}
文章來源:http://yi1.com.cn/posts/781
php 根據(jù)HTTP_USER_AGENT 判斷用戶瀏覽器類型
復(fù)制代碼 代碼如下:
function browsers(){
global $HTTP_USER_AGENT ;
if (isset($HTTP_USER_AGENT)){
$sAgent = $HTTP_USER_AGENT;
}else{
$sAgent = $_SERVER['HTTP_USER_AGENT'];
}
if (strpos($sAgent,'MSIE') !== false && strpos($sAgent,'mac') === false && strpos($sAgent,'Opera') === false){
$iVersion = (float)substr($sAgent,strpos($sAgent,'MSIE') + 5,3);
return ($iVersion >= 5.5) ;
}else if (strpos($sAgent,'Gecko/') !== false){
$iVersion = (int)substr($sAgent,strpos($sAgent,'Gecko/') + 6,8);
return ($iVersion >= 20030210) ;
}else{
return false;
}
}
您可能感興趣的文章:
- PHP判斷是手機(jī)端還是PC端 PHP判斷是否是微信瀏覽器
- thinkphp判斷訪客為手機(jī)端或PC端的方法
- 在WordPress中使用PHP腳本來判斷訪客來自什么國家
- php 判斷訪客是否為搜索引擎蜘蛛的函數(shù)代碼
- 利用PHP判斷是手機(jī)移動(dòng)端還是PC端訪問的函數(shù)示例
- php函數(shù)實(shí)現(xiàn)判斷是否移動(dòng)端訪問
- php/asp/asp.net中判斷百度移動(dòng)和PC蜘蛛的實(shí)現(xiàn)代碼
- PHP判斷是否是微信打開還是瀏覽器打開的方法
- 通過JS和PHP兩種方法判斷用戶請(qǐng)求時(shí)使用的瀏覽器類型
- 使用PHP和JavaScript判斷請(qǐng)求是否來自微信內(nèi)瀏覽器
- PHP判斷訪客是否手機(jī)端(移動(dòng)端瀏覽器)訪問的方法總結(jié)【4種方法】
相關(guān)文章
PHP syntax error, unexpected $end 錯(cuò)誤的一種原因及解決
PHP 遇到 syntax error, unexpected $end 錯(cuò)誤時(shí),查錯(cuò)思路其實(shí)還是看看文件里 PHP 的開始標(biāo)記和結(jié)束標(biāo)記是否配對(duì),還要額外注意注釋里是否出現(xiàn)過 ?> 喲。2008-10-10
關(guān)于php 接口問題(php接口主要也就是運(yùn)用curl,curl函數(shù))
本篇文章是對(duì)php中的接口問題(php接口主要也就是運(yùn)用curl,curl函數(shù))進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-07-07
在WordPress中使用wp_count_posts函數(shù)來統(tǒng)計(jì)文章數(shù)量
這篇文章主要介紹了在WordPress中使用wp_count_posts函數(shù)來統(tǒng)計(jì)文章數(shù)量的方法,同時(shí)也可以統(tǒng)計(jì)草稿及頁面的數(shù)量,相當(dāng)實(shí)用,需要的朋友可以參考下2016-01-01
PHP常用工具函數(shù)小結(jié)【移除XSS攻擊、UTF8與GBK編碼轉(zhuǎn)換等】
這篇文章主要介紹了PHP常用工具函數(shù),結(jié)合實(shí)例形式總結(jié)分析了php移除XSS攻擊、以及php操作UTF8與GBK編碼轉(zhuǎn)換等相關(guān)操作自定義函數(shù)實(shí)現(xiàn)方法,需要的朋友可以參考下2019-04-04
PHP整數(shù)取余返回負(fù)數(shù)的相關(guān)解決方法
PHP整數(shù)取余返回負(fù)數(shù)對(duì)于編程經(jīng)驗(yàn)不足的新手來說還是比較頭疼的一件事。希望通過本文介紹的內(nèi)容,大家能充分掌握這一解決辦法2014-05-05
php實(shí)現(xiàn)背景圖上添加圓形logo圖標(biāo)的方法
這篇文章主要介紹了php實(shí)現(xiàn)背景圖上添加圓形logo圖標(biāo)的方法,結(jié)合實(shí)例形式較為詳細(xì)的分析了php背景圖添加logo圖標(biāo)的操作步驟與具體實(shí)現(xiàn)技巧,需要的朋友可以參考下2016-11-11

