PHP检测移动设备类mobile detection使用实例


Posted in PHP onApril 14, 2014

目前,一个网站有多个版本是很正常的,如PC版,3G版,移动版等等。根据不同的浏览设备我们需要定向到不同的版本中。不仅如此,我们有时候还需要根据不同的客户端加载不同的CSS,因此我们需要能够检测浏览设备,SO,我们就需要用到“mobile detection”类库。

“mobile detection”是一个轻量级移动设备检测的PHP类库,它采用结合特定的HTTP标头中的User-Agent字符串来检测移动客户端环境。注意,mobile detection 只是一个服务器端(PHP)的检测工具,并不能代替响应式Web设计或其他任何形式的客户端功能检测。

mobile detection 类库下载地址:https://github.com/serbanghita/Mobile-Detect

实例1:根据设备重定向到其他版本

当我们使用移动设备浏览某网站时,需要定向到该网站的移动版,首先将具有检测功能的文件Mobile_Detect.php包含到网页中或主页中,现在我们来实现浏览www.uncletoo.com网站时重定向到m.uncletoo.com中:

/*根据文件位置更改路径信息*/
require_once 'Mobile_Detect.php';
$detect = new Mobile_Detect;
if($detect->isMobile()) {
    header('Location: http://m.uncletoo.com/');
    exit;
}
这是定向到移动网站,下面还有其他形式的重定向:
//所有平板设备
if( $detect->isTablet()) {
}
//是移动但非平板设备
if( $detect->isMobile() && !$detect->isTablet()) {
}
//IOS系统
if( $detect->isiOS()) {
}
//Android系统
if( $detect->isAndroidOS()) {
}
//WindowsPhone系统
if( $detect->isWindowsPhoneOS()) {
}

实例2:根据不同设备加载不同资源

如上所述,我们还可以根据不同的浏览设备加载不同的CSS文件。如:

$detect = new Mobile_Detect;
if($detect->isMobile() || $detect->isTablet()) {
    echo "<link rel='stylesheet' href='mobile.css type='text/css' />";
} else {
    echo "<link rel='stylesheet' href='style.css type='text/css' />";
}

注意,mobile detection是一个移动设备检测平台,随着科技的进步会有不同的设备出现,因此你需要随时更新类库,这样才能保证检测的准确性。

 

PHP 相关文章推荐
php Xdebug 调试扩展的安装与使用.
Mar 13 PHP
利用php下载xls文件(自己动手写的)
Apr 18 PHP
Codeigniter出现错误提示Error with CACHE directory的解决方案
Jun 12 PHP
php通过array_unshift函数添加多个变量到数组前端的方法
Mar 18 PHP
PHP读取PPT文件的方法
Dec 10 PHP
php使用函数pathinfo()、parse_url()和basename()解析URL
Nov 25 PHP
用PHP的socket实现客户端到服务端的通信实例详解
Feb 04 PHP
深入讲解PHP的对象注入(Object Injection)
Mar 01 PHP
ZendFramework2连接数据库操作实例
Apr 18 PHP
PHP实现验证码校验功能
Nov 16 PHP
PHP四种排序算法实现及效率分析【冒泡排序,插入排序,选择排序和快速排序】
Apr 27 PHP
Yii2结合Workerman的websocket示例详解
Sep 10 PHP
PHP删除数组中空值的方法介绍
Apr 14 #PHP
PHP批量删除、清除UTF-8文件BOM头的代码实例
Apr 14 #PHP
thinkphp实现数组分页示例
Apr 13 #PHP
不使用php api函数实现数组的交换排序示例
Apr 13 #PHP
php读取大文件示例分享(文件操作类)
Apr 13 #PHP
php使用smtp发送支持附件的邮件示例
Apr 13 #PHP
php实现上传图片生成缩略图示例
Apr 13 #PHP
You might like
example1.php
2006/10/09 PHP
给php新手谈谈我的学习心得
2007/02/25 PHP
PHP 伪静态隐藏传递参数名的四种方法
2010/02/22 PHP
PHP技术开发技巧分享
2010/03/23 PHP
php实现数组筛选奇数和偶数示例
2014/04/11 PHP
php遍历替换目录下文件指定内容的方法
2016/11/10 PHP
查询绑定数据岛的表格中的文本并修改显示方式的js代码
2009/12/15 Javascript
利用JavaScript检测CPU使用率自己写的
2014/03/22 Javascript
js实现表单Radio切换效果的方法
2015/08/17 Javascript
总结JavaScript三种数据存储方式之间的区别
2016/05/03 Javascript
jQuery fadeOut 异步实例代码详解
2016/08/18 Javascript
vue + socket.io实现一个简易聊天室示例代码
2017/03/06 Javascript
详解Angular 4.x 动态创建组件
2017/04/25 Javascript
基于Vue过渡状态实例讲解
2017/09/14 Javascript
小程序tab页无法传递参数的方法
2018/08/03 Javascript
vuejs简单验证码功能完整示例
2019/01/08 Javascript
理理Vue细节(推荐)
2019/04/16 Javascript
javascript实现搜索筛选功能实例代码
2020/11/12 Javascript
用Python实现KNN分类算法
2017/12/22 Python
Python+tkinter模拟“记住我”自动登录实例代码
2018/01/16 Python
浅谈Series和DataFrame中的sort_index方法
2018/06/07 Python
Python log模块logging记录打印用法解析
2020/01/20 Python
python 决策树算法的实现
2020/10/09 Python
Python虚拟环境virtualenv创建及使用过程图解
2020/12/08 Python
Omio美国:全欧洲低价大巴、火车和航班搜索和比价
2017/11/08 全球购物
英国最受欢迎的在线隐形眼镜商店:VisionDirect.co.uk
2018/12/06 全球购物
Clarks西班牙官方在线商店:clarks鞋
2019/05/03 全球购物
一个J2EE项目团队的主要人员组成是什么
2012/06/04 面试题
渡河少年教学反思
2014/02/12 职场文书
会计自荐信范文
2014/03/09 职场文书
校园歌咏比赛主持词
2014/03/18 职场文书
新闻编辑求职信
2014/04/09 职场文书
保研专家推荐信范文
2015/03/25 职场文书
2015年小学二年级班主任工作总结
2015/05/21 职场文书
《开国大典》教学反思
2016/02/16 职场文书
施工安全协议书
2016/03/22 职场文书