随着移动设备的普及,网站也会迎来越来越多移动设备的访问。用适应PC的页面,很多时候对手机用户不友好,那么有些时候,我们需要判断用户是否用手机访问,如果是手机的话,就跳转到指定的手机友好页面。这里就介绍一下,如何判断用户是否用手机访问。
自定义的函数如下:
11 |
if(stristr($_SERVER['HTTP_VIA'],"wap")){ |
15 |
elseif(strpos(strtoupper($_SERVER['HTTP_ACCEPT']),"VND.WAP.WML") > 0){ |
19 |
elseif(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'])){ |
再来一个从PHP框架剥离的判断是否为手机移动终端的函数:
01 |
function is_mobile_request() |
03 |
$_SERVER['ALL_HTTP'] = isset($_SERVER['ALL_HTTP']) ?$_SERVER['ALL_HTTP'] : ''; |
04 |
$mobile_browser = '0'; |
05 |
if(preg_match('/(up.browser|up.link|mmp|symbian|smartphone|midp|wap|phone|iphone|ipad|ipod|android|xoom)/i',strtolower($_SERVER['HTTP_USER_AGENT']))) |
07 |
if((isset($_SERVER['HTTP_ACCEPT'])) and(strpos(strtolower($_SERVER['HTTP_ACCEPT']),'application/vnd.wap.xhtml+xml') !== false)) |
09 |
if(isset($_SERVER['HTTP_X_WAP_PROFILE'])) |
11 |
if(isset($_SERVER['HTTP_PROFILE'])) |
13 |
$mobile_ua = strtolower(substr($_SERVER['HTTP_USER_AGENT'],0,4)); |
14 |
$mobile_agents = array( |
15 |
'w3c ','acs-','alav','alca','amoi','audi','avan','benq','bird','blac', |
16 |
'blaz','brew','cell','cldc','cmd-','dang','doco','eric','hipt','inno', |
17 |
'ipaq','java','jigs','kddi','keji','leno','lg-c','lg-d','lg-g','lge-', |
18 |
'maui','maxo','midp','mits','mmef','mobi','mot-','moto','mwbp','nec-', |
19 |
'newt','noki','oper','palm','pana','pant','phil','play','port','prox', |
20 |
'qwap','sage','sams','sany','sch-','sec-','send','seri','sgh-','shar', |
21 |
'sie-','siem','smal','smar','sony','sph-','symb','t-mo','teli','tim-', |
22 |
'tosh','tsm-','upg1','upsi','vk-v','voda','wap-','wapa','wapi','wapp', |
23 |
'wapr','webc','winw','winw','xda','xda-' |
25 |
if(in_array($mobile_ua, $mobile_agents)) |
27 |
if(strpos(strtolower($_SERVER['ALL_HTTP']), 'operamini') !== false) |
29 |
// Pre-final check to reset everything if the user is on Windows |
30 |
if(strpos(strtolower($_SERVER['HTTP_USER_AGENT']), 'windows') !== false) |
32 |
// But WP7 is also Windows, with a slightly different characteristic |
33 |
if(strpos(strtolower($_SERVER['HTTP_USER_AGENT']), 'windows phone') !== false) |
- PHP CodeBase: 判断用户是否手机访问
随着移动设备的普及,网站也会迎来越来越多移动设备的访问.用适应PC的页面,很多时候对手机用户不友好,那么有些时候,我们需要判断用户是否用手机访问,如果是手机的话,就跳转到指定的手机友好页面.这里就介绍 ...
- C#判断用户是手机访问还是PC访问
今天在做一个wap网站时,需要限制PC用户访问.网上找了很多资料,效果都不怎么理想.其实原理就是根据HTTP_USER_AGENT判断检查用户在用什么浏览器,再根据业务做相应的逻辑处理. 代码如下: ...
- PHP判断用户是否手机访问
自定义的函数如下: $agent = check_wap(); if( $agent ) { header('Location: http://www.nowamagic.net'); exit; } ...
- PHP 判断用户是否手机访问
$agent = check_wap(); if( $agent ) { header('Location: http://www.lewanau.com'); exit; } // check if ...
- 判断用户是pc访问还是手机访问
前天因为手机页面中点击无法链接53客服,就研究了下怎样通过js判断,用户是拿手机(ipad)访问,还是pc端访问, 如果是手机访问的话只需把链接通过attr修改a的链接地址~ <a class= ...
- onethink判断是否是手机访问?
第一步:找到:Application / Common / Common / function.php 添加判断是否是手机访问的代码: /** * 判断当前访问的用户是 PC端 还是 手机端 返回tr ...
- js判断是否为手机访问
JavaScript判断浏览器类型一般有两种办法,一种是根据各种浏览器独有的属性来分辨,另一种是通过分析浏览器的userAgent属性来判断的.在许多情况下,值判断出浏览器类型之后,还需判断浏览器版本 ...
- php 判断是否 是手机访问
//判断是否属手机 function is_mobile() { $user_agent = $_SERVER['HTTP_USER_AGENT']; $mobile_agents = Array(& ...
- php判断是否使用手机访问
直接上代码 /** * 检测是否使用手机访问 * @access public * @return bool */ public function isMobile() { if (isset($_S ...
随机推荐
- Chrome 中的彩蛋——T-Rex
今天,从网页上看到chrome的T-Rex的彩蛋,眨眼间完了10分钟.分享出来,只是好玩. 当 Chrome 无法连接到互联网时,或者上着网突然掉线,刷新页面时报错,我们都会看到T-Rex的身影,没错 ...
- VLC命令参数(转载)
转载自: http://blog.csdn.net/bytxl/article/details/6613449 http://www.cnblogs.com/MikeZhang/archive/201 ...
- redis-消息订阅
使用办法: 订阅端: Subscribe 频道名称 发布端: publish 频道名称发布内容 客户端例子: redis > subscribe news Reading messages... ...
- 不让input表单的输入框保存用户输入的历史记录
如何不让input表单的输入框保存用户输入的历史记录. 有时我们在设计网页时不想让表单保存用户输入历史记录,比如一些隐私数据,或一些冲值卡 <input name="test&quo ...
- Keil的使用-1创建项目和工程
下载keil,注意不要使用MDK版本(主要是arm开发使用),大小约54M 安装过程不再详述 安装Keil成功并运行后,新建项目, 创建新项目,然后弹出下图,选择对应的单片机芯片(双击) ...
- 简述一个javascript简单继承工具的实现原理
背景 由于本人非常希望能够开发自己的游戏,所以业余时间一直在想着能不能自己一些好玩又有趣的东西出来,最近随着steam上众多独立游戏的爆发,感觉自己又燃烧了起来,所以又拾起了很久以前的一个2d引擎,决 ...
- SQL SERVER 2008 nvarchar 转换 deciaml 失败(nvarchar to decimal)
转换数据发生 消息 8115,级别 16,状态 6,第 1 行 将 nvarchar 转换为数据类型 numeric 时出现算术溢出错误. nvarchar 是带很长小数,直接转换成decimal 失 ...
- js 外部文件加载处理
概述 前端在日常工作中很大一部分时间是在思考页面的优化方案,让页面载入得更快.鉴于javascript是单线程的事件驱动语言,优化工作之一就是:控制图片.swf.iframe等大流量文件以及js和cs ...
- linux 修改目录文件权限,目录文件所属用户,用户组
1:查看命令:ll drwxr-xr-x 4 gamer ftp 4096 Mar 7 16:56 gstore drwxrwxrwx 10 root ftp 4096 De ...
- Crashing Robots
Description In a modernized warehouse, robots are used to fetch the goods. Careful planning is neede ...