php 判断当前手机类型_php中HTTP_USER_AGENT判断手机类型的函数
有关判断手机类型的方法,脚本学堂之前的文章有所提及。
相关参考文章:
判断是否手机访问
php判断是否手机访问的代码
用HTTP_USER_AGENT判断手机类型,代码如下:
/**
* 判断手机类型
* by www.jbxue.com
*/
function is_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)
return true;
else
return false;
}
?>
附一个自己写的简单方法:
//能过http_user_agent检测是否手机访问
$ua = strtolower($_SERVER['HTTP_USER_AGENT']);
$uachar = "/(nokia|sony|ericsson|mot|samsung|sgh|lg|
philips|panasonic|alcatel|lenovo|cldc|midp|mobile|wap)/i";
if(($ua == '' || preg_match($uachar, $ua))&& !strpos(strtolower($_SERVER['REQUEST_URI']),'wap'))
{
$Loaction = 'wap/';
if (!empty($Loaction))
{
ecs_header("Location: $Loaction\n");
exit;
}
}
?>
php 判断当前手机类型_php中HTTP_USER_AGENT判断手机类型的函数相关推荐
- java怎么判断对象为空_java中怎么判断对象是否为空
java中判断对象是否为空的方法: 首先来看一下工具StringUtils的判断方法: 一种是org.apache.commons.lang3包下的:另一种是org.springframework.u ...
- mysql中所有时间类型_MySQL 中的日期时间类型
INSERT INTO todo (title,created_on) VALUES ('blah','2019-09-31'); ERROR 1292 (22007): Incorrect date ...
- python中关键字 表示空类型_python中什么表示空类型
python中什么表示空类型? python中None表示空类型.表示该值是一个空对象,空值是Python里一个特殊的值,用None表示.None不能理解为0,因为0是有意义的,而None是一个特殊的 ...
- oracle 判断数字是否连续,oracle中 如何 判断 表中字段是否为 连续的数字,例如‘3333333333',‘44444444’...
oracle中 如何 判断 表中字段是否为 连续的数字,例如'3333333333','44444444' (2011-09-23 15:42:45) 标签: 判断 字段是否为 连续的数字 杂谈 分类 ...
- html中怎么判断数字格式是否,javascript中怎么判断是否是数字?
JavaScript中判断是否是数字的方法:1.使用isNaN()函数判断.2.使用正则表达式/^[0-9]+.?[0-9]*/可以判断是否是数字.3.使用parseFloat()函数判断是否是数字. ...
- java中判断日期是当天_java中如何判断指定日期是不是今天
java中如何判断指定日期是不是今天 发布时间:2020-06-19 10:35:23 来源:亿速云 阅读:150 作者:Leah java中如何判断指定日期是不是今天?相信很多新手小白还没学会这个技 ...
- php判断数组是否存在字符串中,php判断数组元素中是否存在某个字符串的方法_php技巧...
方法一:采用in_array(value,array,type) type 可选.如果设置该参数为 true,则检查搜索的数据与数组的值的类型是否相同. $arr = array('可以','如何', ...
- php if判断两个条件_PHP中if相关条件语句该如何理解使用?
php中文网最新课程 每日17点准时技术干货分享 我们在开发PHP页面时,有时候会需要根据不同条件从数据库或者页面中读取信息,然后再执行相应的语句.涉及到这方面的需求时,我们就要了解掌握PHP中一些条 ...
- android 判断双卡手机号码,android开发中如何判断手机中存在的sim卡数量?
1.Android M及以上版本: TelephonyManager manager = (TelephonyManager) getSystemService(Context.TELEPHONY_S ...
最新文章
- 深夜凌晨女朋友问什么是数据仓库,我的回答让她惊讶,然后发现。。。
- 数组的有关属性和方法
- JS中的 generator
- kafka partition分配_kafka的分区分配策略
- ACM_贪心法_queue_Fence Repair
- c++矩阵类_Python线性代数学习笔记——矩阵的基本运算和基本性质,实现矩阵的基本运算...
- ubuntu18.04 更改apt源
- Anroid推送服务
- linux査 到漠河 装apache,如何在Ubuntu上搭建一台安全的Apache Web服务器
- spark hive 结合处理 把多行变成多列
- nyoj--49--开心的小明(背包)
- Scrcpy - 开源免费在电脑显示手机画面并控制手机的工具 (投屏/录屏/免Root)
- bzoj1036 [ZJOI2008]树的统计Count
- Mac投屏软件推荐duet
- 无线安全相关介绍及Windows下扫描WiFi
- 正态分布变换NDT算法原理及其在点云配准中的应用
- 西伯利亚入夏火灾频发 中俄白桦茸企业启动原料保障计划
- Web前端之CSS层叠样式表相关案例
- 【PAT A1094】The Largest Generation
- 子网掩码是什么?子网掩码及其CIDR斜杠表示法
热门文章
- MATLAB 仿真 n年后的比例,基于Matlab的比例导引弹道仿真分析.PDF
- Emoji表情分类整理,写blog速查用
- 微信的QQ邮箱助手不提醒,怎么解决?
- 8月教材有变,如何应对PMP考试
- 包含头文件使用 书名号与双引号的区别(直接打符号竟然发表不了,太难了)
- 使用loadrunner javavuser协议开发脚本实战
- signature=ff245c21bd1bccc2fe43f26058f7e9c1,No, this is Patrik
- 【图像处理】自动白平衡(AWB)
- 这些大学奖学金覆盖率100%!
- 笔记本液晶屏改装显示器