网页怎么判断是电脑浏览还是手机终端
不同的网页判断基准不一样
一、php/html网页判断标准
1、php网页是根据用户访问的设备分辨率来判断是电脑浏览器或者是手机浏览器的。
2、例如php通过如下代码即可实现统计:
<?php?function?check_wap()?{?
if?(isset($_SERVER['HTTP_VIA']))?return?true;?
if?(isset($_SERVER['HTTP_X_NOKIA_CONNECTION_MODE']))?return?true;?
if?(isset($_SERVER['HTTP_X_UP_CALLING_LINE_ID']))?return?true;?
if?(strpos(strtoupper($_SERVER['HTTP_ACCEPT']),"VND.WAP.WML")?>?0)?{?
//?Check?whether?the?browser/gateway?says?it?accepts?WML.?
$br?=?"WML";?
}?else?{?
$browser?=?isset($_SERVER['HTTP_USER_AGENT'])trim($_SERVER['HTTP_USER_AGENT'])?:?'';?
if(empty($browser))?return?true;?
$mobile_os_list=array('Google?Wireless?Transcoder','Windows?CE','WindowsCE','Symbian','Android','armv6l','armv5','Mobile','CentOS','mowser','AvantGo','Opera?Mobi','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")?{?
return?true;?
}?else?{?
return?false;?
}?
}?
function?checkSubstrs($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";?
}?
>二、java?javascript的判断标准:
1、JavaScript不管是判断电脑浏览器还是手机浏览器,都是通过User Agent 来判断;
2、以 javascript判断实力如下:
<coding-1?lang="other">?<script?type="text/javascript">?
var?browser={
versions:function(){
var?u?=?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.+Mac?OS?X/),?//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>