现在的位置: 首页 -> PHP学习 -> PHP源码 -> php怎么判断网页是电脑访问还是手机访问

php怎么判断网页是电脑访问还是手机访问

2013-08-14 20:28评论数 1 ⁄ 被浏览 4765 views+

现在使用手机上网的人越来越多了,所以手机用户给网站带来流量也是非常可观的。但是对于像我这样的网站想让手机访问,那么体验度一定会很差,因为该站的css样式只适合用电脑浏览器访问。所以我就研究怎么用php去判断网页是电脑访问还是手机访问,然后再通过去加载不同的css来达到手机和电脑都可以正常的访问的效果。


网站查了很多资料,终于找到了一个合适、比较好用的代码,也希望能给大家一个参考。


<?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";

}


?>


已经测试过了,是可以识别是电脑访问还是手机访问的。

 

文章出自:https://www.daixiaorui.com/read/26.html 本站所有文章,除注明出处外皆为原创,转载请注明本文地址,版权所有。

目前有 1 条评论  @我要评论

  1. 1楼袁志蒙 : 2015-01-17 15:20:52 评论说: @回复

    测试在本机环境和服务器环境下,效果不一样,不能用,楼主可以试试

您的每一个评论都是对我的一份支持

 博客二维码

昵称 *

邮箱 *