導航:首頁 > 編程語言 > php判斷手機瀏覽器

php判斷手機瀏覽器

發布時間:2023-06-29 16:07:44

php怎麼判斷是不是蘋果手機瀏覽器

該功能的實現思路是通過HTTP_X_WAP_PROFILE、HTTP_VIA、HTTP_USER_AGENT等信息來判斷訪客是否通過移動端瀏覽器訪問PHP網站。以下是PHP代碼:
/**
* 是否移動端訪問訪問
*
* @return bool
*/
function isMobile()
{
// 如果有HTTP_X_WAP_PROFILE則一定是移動設備
if (isset ($_SERVER['HTTP_X_WAP_PROFILE']))
{
return true;
}
// 如果via信息含有wap則一定是移動設備,部分服務商會屏蔽該信息
if (isset ($_SERVER['HTTP_VIA']))
{
// 找不到為flase,否則為true
return stristr($_SERVER['HTTP_VIA'], "wap") ? true : false;
}
// 腦殘法,判斷手機發送的客戶端標志,兼容性有待提高
if (isset ($_SERVER['HTTP_USER_AGENT']))
{
$clientkeywords = array ('nokia',
'sony',
'ericsson',
'mot',
'samsung',
'htc',
'sgh',
'lg',
'sharp',
'sie-',
'philips',
'panasonic',
'alcatel',
'lenovo',
'iphone',
'ipod',
'blackberry',
'meizu',
'android',
'netfront',
'symbian',
'ucweb',
'windowsce',
'palm',
'operamini',
'operamobi',
'openwave',
'nexusone',
'cldc',
'midp',
'wap',
'mobile'
);
// 從HTTP_USER_AGENT中查找手機瀏覽器的關鍵字
if (preg_match("/(" . implode('|', $clientkeywords) . ")/i", strtolower($_SERVER['HTTP_USER_AGENT'])))
{
return true;
}
}
// 協議法,因為有可能不準確,放到最後判斷
if (isset ($_SERVER['HTTP_ACCEPT']))
{
// 如果只支持wml並且不支持html那一定是移動設備
// 如果支持wml和html但是wml在html之前則是移動設備
if ((strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') !== false) && (strpos($_SERVER['HTTP_ACCEPT'], 'text/html') === false || (strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') < strpos($_SERVER['HTTP_ACCEPT'], 'text/html'))))
{
return true;
}
}
return false;
}

❷ 網頁怎麼判斷是電腦瀏覽還是手機終端

不同的網頁判斷基準不一樣

一、php/html網頁判斷標准

1、php網頁是根據用戶訪問的設備解析度來判斷是電腦瀏覽器或者是手機瀏覽器的。

2、例如php通過如下代碼即可實現統計:

<?php
functioncheck_wap(){
if(isset($_SERVER['HTTP_VIA']))returntrue;
if(isset($_SERVER['HTTP_X_NOKIA_CONNECTION_MODE']))returntrue;
if(isset($_SERVER['HTTP_X_UP_CALLING_LINE_ID']))returntrue;
if(strpos(strtoupper($_SERVER['HTTP_ACCEPT']),"VND.WAP.WML")>0){
//Checkwhetherthebrowser/gatewaysaysitacceptsWML.
$br="WML";
}else{
$browser=isset($_SERVER['HTTP_USER_AGENT'])?trim($_SERVER['HTTP_USER_AGENT']):'';
if(empty($browser))returntrue;
$mobile_os_list=array('GoogleWirelessTranscoder','WindowsCE','WindowsCE','Symbian','Android','armv6l','armv5','Mobile','CentOS','mowser','AvantGo','OperaMobi','J2ME/MIDP','Smartphone','Go.Web','Palm','iPAQ');
$mobile_token_list=array('Profile/MIDP','Configuration/CLDC-','160×160','176×220','240×240','240×320','320×240','UP.Browser','UP.Link','SymbianOS','PalmOS','PocketPC','SonyEricsson','Nokia','BlackBerry','Vodafone','BenQ','Novarra-Vision','Iris','NetFront','HTC_','Xda_','SAMSUNG-SGH','Wapaka','DoCoMo','iPhone','iPod');
$found_mobile=checkSubstrs($mobile_os_list,$browser)||
checkSubstrs($mobile_token_list,$browser);
if($found_mobile)
$br="WML";
else$br="WWW";
}
if($br=="WML"){
returntrue;
}else{
returnfalse;
}
}
functioncheckSubstrs($list,$str){
$flag=false;
for($i=0;$i<count($list);$i++){
if(strpos($str,$list[$i])>0){
$flag=true;
break;
}
}
return$flag;
}
if(check_wap()){
echo"wap";
}else{
echo"web";
}
?>

二、javajavascript的判斷標准:

1、JavaScript不管是判斷電腦瀏覽器還是手機瀏覽器,都是通過User Agent 來判斷;

2、以 javascript判斷實力如下:

<coding-1lang="other">
<scripttype="text/javascript">
varbrowser={
versions:function(){
varu=navigator.userAgent,app=navigator.appVersion;
return{
trident:u.indexOf('Trident')>-1,//IE內核
presto:u.indexOf('Presto')>-1,//opera內核
webKit:u.indexOf('AppleWebKit')>-1,//蘋果、谷歌內核
gecko:u.indexOf('Gecko')>-1&&u.indexOf('KHTML')==-1,//火狐內核
mobile:!!u.match(/AppleWebKit.*Mobile.*/)||!!u.match(/AppleWebKit/),//是否為移動終端
ios:!!u.match(/(i[^;]+;(U;)?CPU.+MacOSX/),//ios終端
android:u.indexOf('Android')>-1||u.indexOf('Linux')>-1,//android終端或者uc瀏覽器
iPhone:u.indexOf('iPhone')>-1||u.indexOf('Mac')>-1,//是否為iPhone或者QQHD瀏覽器
iPad:u.indexOf('iPad')>-1,//是否iPad
webApp:u.indexOf('Safari')==-1//是否web應該程序,沒有頭部與底部
};
}()
}

document.writeln("是否為移動終端:"+browser.versions.mobile);
document.writeln("ios終端:"+browser.versions.ios);
document.writeln("android終端:"+browser.versions.android);
document.writeln("是否為iPhone:"+browser.versions.iPhone);
document.writeln("是否iPad:"+browser.versions.iPad);
document.writeln(navigator.userAgent);
</script>
</coding>

❸ PHP判斷瀏覽器

用 $_SERVER["HTTP_USER_AGENT"] 取瀏覽器信息,里邊有瀏覽器的類型及版本

隨手網上搜的
<?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"];
?>

❹ ThinkPHP中判斷是手機端還是電腦端訪問的方法

一般是通過訪問的時候請求來源的header頭文件信息來進行判斷的,譬如Android的手機訪問的話一般都會在hedear頭信息裡面帶上Android這樣的信息,同理Iphone、windows phone都會帶。

閱讀全文

與php判斷手機瀏覽器相關的資料

熱點內容
安卓手機電話簿怎麼導出到蘋果手機 瀏覽:761
php實現投票 瀏覽:333
手機爆力解壓加密視頻文件 瀏覽:932
東方財富app怎麼看北上資金圖解 瀏覽:416
邢昭林程序員那麼可愛拍現場 瀏覽:169
安卓什麼應用可以免費看電視劇 瀏覽:504
合適pdf 瀏覽:293
app監測睡眠怎麼選擇 瀏覽:642
老人家用什麼安卓手機好 瀏覽:955
解壓包能不能送女朋友 瀏覽:701
好看發卡網源碼 瀏覽:51
水平集演算法matlab 瀏覽:769
區域網如何用ftp伺服器配置 瀏覽:74
程序員慣性思考模式 瀏覽:441
如何在個稅app上查身份證號 瀏覽:7
電視家app安裝在電視上怎麼安 瀏覽:889
怎麼將pdf格式轉化為圖片格式 瀏覽:639
伺服器拔掉raid卡怎麼裝系統 瀏覽:234
區域對稱加密演算法 瀏覽:247
數字轉漢字php 瀏覽:735