我们做Web开发的时候,常常需要判断用户是否是使用手机访问网站,从而决定如何页面任何展示给用户,以提高用户体验,这时需要用到判断浏览器类型的代码:

下面PHP函数可以根据http user-agent判断是否为手机访问,如果是则返回true:

<?php
/**
* 判断是否是通过手机访问
* @return bool 是否是移动设备
*/
public function isMobile() {//判断手机发送的客户端标志if(isset($_SERVER['HTTP_USER_AGENT'])) {$userAgent = strtolower($_SERVER['HTTP_USER_AGENT']);$clientkeywords = array('nokia', 'sony', 'ericsson', 'mot', 'samsung', 'htc', 'sgh', 'lg', 'sharp', 'sie-','philips', 'panasonic', 'alcatel', 'lenovo', 'iphone', 'ipod', 'blackberry', 'meizu','android', 'netfront', 'symbian', 'ucweb', 'windowsce', 'palm', 'operamini','operamobi', 'opera mobi', 'openwave', 'nexusone', 'cldc', 'midp', 'wap', 'mobile');// 从HTTP_USER_AGENT中查找手机浏览器的关键字if(preg_match("/(".implode('|',$clientkeywords).")/i",$userAgent)&&strpos($userAgent,'ipad') === false){return true;}}return false;
}

附:各移动浏览器的http user-agent:

1. Iphone(苹果)平台微信的ucweb的useragent:

Mozilla/5.0 (iPhone; CPU iPhone OS 5_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko)
Mobile/9B176 MicroMessenger/4.3.2

2. Android(安卓)平台微信的ucweb的useragent:

Mozilla/5.0 (Linux; U; Android 2.3.6; zh-cn; GT-S5660 Build/GINGERBREAD) AppleWebKit/533.1
(KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 MicroMessenger/4.5.255
二、UC浏览器的http user-agent(关键词UCWEB)

1. android平台:

android平台ucweb急速模式开启下ucweb浏览器useragent:

UCWEB/2.0 (Linux; U; Adr 2.3; zh-CN; MI-ONEPlus) U2/1.0.0 UCBrowser/8.6.0.199 U2/1.0.0 Mobile

android平台ucweb急速模式关闭状态下的http_user_agent:

Mozilla/5.0 (Linux; U; Android 2.3; zh-CN; MI-ONEPlus) AppleWebKit/534.13 (KHTML, like Gecko)
UCBrowser/8.6.0.199 U3/0.8.0 Mobile Safari/534.13 

2. iPhone 平台

iPhone 平台极速模式开启状态下ucweb浏览器useragent:

UCWEB/2.0 (iOS; U; iPh OS 4_3_2; zh-CN; iPh4) U2/1.0.0 UCBrowser/8.6.0.199 U2/1.0.0 Mobile 

iPhone 平台极速模式关闭状态下 UA 示例如下:(OBUA 为自带浏览器 UA)

OBUA UCBrowser/8.6.0.199 Mobile

3. iPad 平台

ipad平台下ucweb浏览器useragent:

Mozilla/5.0 (iPad; U; CPU OS 6_0 like Mac OS X; zh-CN; iPad2) AppleWebKit/534.13
(KHTML, like Gecko) UCBrowser/8.6.0.199 U3/0.8.0 Safari/534.13 

4. windows Phone平台

WP平台下ucweb浏览器useragent:
WP平台极速模式开启状态下:(以 Nokia 900 为例)

UCWEB/2.0 (Windows; U; wds7.10; zh-CN; Nokia 900) U2/1.0.0 UCBrowser/8.6.0.199 U2/1.0.0 Mobile 

5. 诺基亚平台

诺基亚手机Symbian&Java平台ucweb浏览器useragen:

Nokia 5800 XpressMusic/UCWEB8.9.0.253/50/999 

原文:http://www.aiezu.com/code/server_http_user-agent_uc.html

过http user-agent判断是否为手机浏览器相关推荐

  1. php http agent,PHP通过http头user-agent判断是否为手机浏览器

    下面PHP自定义函数可以根据http头user-agent判断是否为手机访问,如果是则返回true: /** * 判断是否是通过手机访问 * @return bool 是否是移动设备 */ publi ...

  2. php 判断是否为安卓,通过http user-agent判断是否为手机浏览器

    我们做Web一很等指似很一者下插近直好一的的有段文,开发的时候,常常需要判断用户是否是使用手机访问网站,从而决定如何页面任何展示给用户,以提高用户体验,这时需要用到判断浏览器类型的代码调代求学功解宗维 ...

  3. php判断电脑还是手机浏览器打开网页,php判断是手机还是电脑访问网站

    php判断是手机还是电脑访问网站的方法:首先创建一个PHP示例文件:然后定义一个"is_mobile"方法:接着实现判断检测访问的浏览器为哪一个浏览器的功能:最后在浏览器执行该文件 ...

  4. 使用 user agent 判断微信内置浏览器版本信息

    2019独角兽企业重金招聘Python工程师标准>>> 最近开发wap,仅用在微信浏览器上,部分功能需要判断微信浏览器 版本信息.其他功能类推:(注:获取到的userAgent就是纯 ...

  5. 判断是否是手机访问及手机操作系统

    我们现在做的项目,移动端和PC端网站访问的是同一套接口,那么如何在接口中区分是手机访问还是PC短访问呢? 核心思想:根据请求头(request header)来判断,如何请求没有header或伪造us ...

  6. php通过agent判断app,通过userAgent判断手机浏览器类型 – 好饱的博客 – 程序员博客...

    我们可以通过userAgent来判断,比如检测某些关键字,例如:AppleWebKit*****Mobile或AppleWebKit,需要注意的是有些浏览器的userAgent中并不包含AppleWe ...

  7. 判断手机浏览器还是桌面浏览器

    目录 (1)使用navigator.userAgent (2)使用window.matchMedia() (3)使用react-device-detect (1)使用navigator.userAge ...

  8. PHP CodeBase: 判断用户是否手机访问

    转载地址:http://www.nowamagic.net/librarys/veda/cate/PHP 随着移动设备的普及,网站也会迎来越来越多移动设备的访问.用适应PC的页面,很多时候对手机用户不 ...

  9. 手机浏览器类型ua php,通过userAgent判断手机浏览器类型(示例代码)

    我们可以通过userAgent来判断,比如检测某些关键字,例如:AppleWebKit*****Mobile或AppleWebKit,需要注意的是有些浏览器的userAgent中并不包含AppleWe ...

最新文章

  1. C语言:随笔10--共用体
  2. linux用户变量设置位置,linux---位置参数
  3. Codeforces #440.Div.2
  4. Storyboard中segue使用总结
  5. flutter offset_Flutter 仿微信界面聊天室 | 基于 (Flutter+Dart) 聊天实例
  6. Unity HDRP中的光照烘焙测试(Mixed Lighing )和间接光
  7. HDU X问题 中国剩余定理--求满足条件的个数
  8. PacVim:一个学习vim命令的游戏,再也不怕记不住了!
  9. loj 6085.「美团 CodeM 资格赛」优惠券
  10. session同步问题
  11. 经验总结:完整做完一款游戏需要经历哪些流程?
  12. 问题解决型QCC课题的推行步骤
  13. PostgreSQL/pgsql数据库优化查询和索引的猜想
  14. macOS 下的 homebrew
  15. 华硕主板前置音频设置
  16. Word中规范输入大写的中文日期(转)
  17. VS2019 添加一组控件到工具箱
  18. .NET下使用snappy
  19. ps快捷图标在哪个文件夹_在PS中制作一个下载文件夹的图标
  20. 租用稳定的网通服务器,网通租用服务器

热门文章

  1. 亲戚(信息学奥赛一本通-T1346)
  2. 烦人的幻灯片(信息学奥赛一本通-T1395)
  3. Vigenère密码(信息学奥赛一本通-T1402)
  4. 信息学奥赛一本通C++语言——1048:有一门课不及格的学生
  5. 24 CO配置-控制-产品成本控制-成本对象控制-定义订单交货的货物接收评估
  6. 51 FI配置-财务会计-固定资产-折旧-维护期间控制方法
  7. 5 FI配置-财务会计-给公司代码分配总账科目表
  8. mysql innodb 并发 插入 慢_InnoDB并发插入,居然使用意向锁?
  9. 一起学习C语言:函数(四)
  10. 一起学习C语言:初步进入编程世界(一)