有些时候,我们需要判断用户是否用手机访问,如果是手机的话,就跳转到指定的手机友好页面。这里就介绍一下,如何判断用户是否用手机访问。
2701-2018微信小程序视频教程导读:链接与密码都存在,有需要的可以点击 右下角 获取视频教程获取密码自定义的函数如下:12345678910111213141516171819$agent= check_wap();
if( $agent){header(Location: http://www.jb51.net);exit;}// check if wap functioncheck_wap(){// 先检查是否为wap代理,准确度高
if(stristr($_SERVER[HTTP_VIA],"wap")){returntrue;}// 检查浏览器是否接受 WML.elseif(strpos(strtoupper($_SERVER[
HTTP_ACCEPT]),"VND.WAP.WML") > 0){returntrue;}//检查USER_AGENTelseif(preg_match(/(blackberry|configuration\/cldc|hp |hp-|htc |htc_|htc-|iemobile|kindle|midp|mmp|motorola|mobile|nokia|opera mini|opera |Googlebot-Mobile|YahooSeeker\/M1A1-R2D2|android|iphone|ipod|mobi|palm|palmos|pocket|portalmmm|ppc;|smartphone|sonyericsson|sqh|spv|symbian|treo|up.browser|up.link|vodafone|windows ce|xda |xda_)/i
, $_SERVER[HTTP_USER_AGENT])){returntrue; }else{returnfalse; }}再来一个从PHP框架剥离的判断是否为手机移动终端的函数:(经过测试,很全面,推荐使用)
1234567891011121314151617181920212223242functionis_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) returntrue; elsereturnfalse;您可能感兴趣的文章:centos 7.2下搭建LNMP环境教程php银联网页支付实现方法PHP开发安全问题PDO概念及总结浅谈COOKIE和SESSION关系和区别
以下是商务合作
亲爱的读者们,感谢您花时间阅读本文。如果您对本文有任何疑问或建议,请随时联系我。我非常乐意与您交流。
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。