PHP识别电脑还是手机访问网站

Posted ycookiee

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP识别电脑还是手机访问网站相关的知识,希望对你有一定的参考价值。

最近在做phongap的项目,同一套代码,支持pc可以调试,又支持手机app调用接口,如果在pc上不屏掉调用接口js会报错,难以加载

 

,所以就在网上找了,这个,不是原创,重在分享。

 

<?php
function isMobile(){  
	$useragent=isset($_SERVER[‘HTTP_USER_AGENT‘]) ? $_SERVER[‘HTTP_USER_AGENT‘] : ‘‘;  
	$useragent_commentsblock=preg_match(‘|\(.*?\)|‘,$useragent,$matches)>0?$matches[0]:‘‘;  	  
	function CheckSubstrs($substrs,$text){  
		foreach($substrs as $substr)  
			if(false!==strpos($text,$substr)){  
				return true;  
			}  
			return false;  
	}
	$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,$useragent_commentsblock) ||  
			  CheckSubstrs($mobile_token_list,$useragent);  
		  
	if ($found_mobile){  
		return true;  
	}else{  
		return false;  
	}  
}
if (isMobile())
	echo ‘手机登录‘;
else
	echo ‘电脑登录‘;
?>

试一下,还行,现在只是针对自己调试,不什么问题

 

以上是关于PHP识别电脑还是手机访问网站的主要内容,如果未能解决你的问题,请参考以下文章

php如何判断电脑访问还是手机访问?

如何通过nginx区分客户端访问来自电脑还是手机,怎么返回不同的页面(思路)?

php网站中英文切换

如何判断网页是移动端还是电脑端打开的

asp中怎样实现判断是手机访问还是电脑浏览器访问?

Filter过滤器实现同一地址手机和电脑页面不同