userAgent获取并判断是否pc

news/2024/11/22 16:23:43/

文章目录

  • userAgent获取方式
  • javascript
  • php

userAgent获取方式

javascript

JS判断是页面是在手机端还是PC端打开(navigator.userAgent)

<script>console.log(navigator.userAgent);var os = function (){var ua = navigator.userAgent,isWindowsPhone = /(?:Windows Phone)/.test(ua),isSymbian = /(?:SymbianOS)/.test(ua) || isWindowsPhone,isAndroid = /(?:Android)/.test(ua),isFireFox = /(?:Firefox)/.test(ua),isChrome = /(?:Chrome|CriOS)/.test(ua),isTablet = /(?:iPad|PlayBook)/.test(ua) || (isAndroid && !/(?:Mobile)/.test(ua)) || (isFireFox && /(?:Tablet)/.test(ua)),isPhone = /(?:iPhone)/.test(ua) && !isTablet,isPc = !isPhone && !isAndroid && !isSymbian;return {isTablet: isTablet,isPhone: isPhone,isAndroid: isAndroid,isPc: isPc};
}();if (os.isAndroid || os.isPhone) {console.log("手机")
} else if (os.isTablet) {console.log("平板")
} else if(os.isPc) {console.log("电脑")
}
</script>

php

PHP解析HTTP_USER_AGENT 获取客户端浏览器以及版本号
PHP解析HTTP_USER_AGENT 获取客户端手机型号

/*** 获取客户端手机型号* @param $agent    //$_SERVER['HTTP_USER_AGENT']* @return array[mobile_brand]      手机品牌* @return array[mobile_ver]        手机型号*/
function getClientMobileBrand($agent = ''){if(preg_match('/iPhone\s([^\s|;]+)/i', $agent, $regs)) {$mobile_brand = '苹果';$mobile_ver = $regs[0];}elseif(preg_match('/SAMSUNG|Galaxy|GT-|SCH-|SM-\s([^\s|;]+)/i', $agent, $regs)) {$mobile_brand = '三星';$mobile_ver = $regs[0];}elseif(preg_match('/Huawei|Honor|H60-|H30-\s([^\s|;]+)/i', $agent, $regs)) {$mobile_brand = '华为';$mobile_ver = $regs[0];}elseif(preg_match('/Mi note|mi one\s([^\s|;]+)/i', $agent, $regs)) {        $mobile_brand = '小米';$mobile_ver = $regs[0];}elseif(preg_match('/HM NOTE|HM201\s([^\s|;]+)/i', $agent, $regs)) {        $mobile_brand = '红米';$mobile_ver = $regs[0];}elseif(preg_match('/Coolpad|8190Q|5910\s([^\s|;]+)/i', $agent, $regs)) {        $mobile_brand = '酷派';$mobile_ver = $regs[0];}elseif(preg_match('/ZTE|X9180|N9180|U9180\s([^\s|;]+)/i', $agent, $regs)) {        $mobile_brand = '中兴';$mobile_ver = $regs[0];}elseif(preg_match('/OPPO|X9007|X907|X909|R831S|R827T|R821T|R811|R2017\s([^\s|;]+)/i', $agent, $regs)) {        $mobile_brand = 'OPPO';$mobile_ver = $regs[0];}elseif(preg_match('/HTC|Desire\s([^\s|;]+)/i', $agent, $regs)) {        $mobile_brand = 'HTC';$mobile_ver = $regs[0];}elseif(preg_match('/Nubia|NX50|NX40\s([^\s|;]+)/i', $agent, $regs)) {        $mobile_brand = '努比亚';$mobile_ver = $regs[0];}elseif(preg_match('/M045|M032|M355\s([^\s|;]+)/i', $agent, $regs)) {        $mobile_brand = '魅族';$mobile_ver = $regs[0];}elseif(preg_match('/Gionee|GN\s([^\s|;]+)/i', $agent, $regs)) {        $mobile_brand = '金立';$mobile_ver = $regs[0];}elseif(preg_match('/HS-U|HS-E\s([^\s|;]+)/i', $agent, $regs)) {        $mobile_brand = '海信';$mobile_ver = $regs[0];}elseif(preg_match('/Lenove\s([^\s|;]+)/i', $agent, $regs)) {$mobile_brand = '联想';$mobile_ver = $regs[0];}elseif(preg_match('/ONEPLUS\s([^\s|;]+)/i', $agent, $regs)) {$mobile_brand = '一加';$mobile_ver = $regs[0];}elseif(preg_match('/vivo\s([^\s|;]+)/i', $agent, $regs)) {$mobile_brand = 'vivo';$mobile_ver = $regs[0];}elseif(preg_match('/K-Touch\s([^\s|;]+)/i', $agent, $regs)) {$mobile_brand = '天语';$mobile_ver = $regs[0];}elseif(preg_match('/DOOV\s([^\s|;]+)/i', $agent, $regs)) {$mobile_brand = '朵唯';$mobile_ver = $regs[0];}elseif(preg_match('/GFIVE\s([^\s|;]+)/i', $agent, $regs)) {$mobile_brand = '基伍';$mobile_ver = $regs[0];}elseif(preg_match('/Nokia\s([^\s|;]+)/i', $agent, $regs)) {$mobile_brand = '诺基亚';$mobile_ver = $regs[0];}else{$mobile_brand = '其他';}return ['mobile_brand'=>$mobile_brand, 'mobile_ver'=>$mobile_ver];
}
————————————————
版权声明:本文为CSDN博主「trim(me)」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_37689230/java/article/details/82863036

http://www.ppmy.cn/news/180652.html

相关文章

php判断手机型号

#php获取手机型号 function getClientMobileBrand($agent ){if(preg_match(/iPhone\s([^\s|;])/i, $agent, $regs)) {$mobile_brand iphone;$mobile_ver $regs[0];}elseif(preg_match(/SAMSUNG|Galaxy|GT-|SCH-|SM-\s([^\s|;])/i, $agent, $regs)) {$mobile_brand 三星;$m…

友盟全域指数

http://www.umindex.com/ 首页 产品 指数 报告 开发者中心 论坛 活动 全域指数 移动指数 PC指数 设备指数 社交指数 应用指数 市场指数 分 享  Android  iOS  设备  系统  分辨率  联网  位置 排名 趋势  2016-8  Android 设备活跃排名 根据【友盟】数据…

android盒子多个DLNA冲突,说说DLNA、AirPlay 、Miracast那点事

本帖最后由 看客影视 于 2013-11-6 12:59 编辑 2 L% d I3 l" l$ }8 A# C* x1 {3 Y Y9 Z6 K/ q5 ~: d# V 目前将终端信号经传输到智能电视、电视盒的技术有三种&#xff1a;DLNA、AirPlay、Miracast。 玩盒子和智能电视的网友对DLNA、AirPlay已经比较熟悉了。对于Miracast比…

php获取客户端设备信息,php获取手机设备信息

//版本 public function getOS() {$ua = $_SERVER[HTTP_USER_AGENT]; if (strpos($ua, Android) !== false) {preg_match("/(?<=Android )[\d\.]{1,}/", $ua, $version); return Platform:Android OS_Version:.$version[0]; } elseif (strpos($ua, iPhone) !== f…

php 获取agent,php根据useragent获取手机品牌和型号

/** * 获取客户端手机型号 * @param $agent //$_SERVER[HTTP_USER_AGENT] * @return array[mobile_brand] 手机品牌 * @return array[mobile_ver] 手机型号 */ function getClientMobileBrand($agent = ){if(preg_match(/iPhone\s([^\s|;]+)/i, $agent, $regs))…

Three.js--》实现3d踢球模型展示

目录 项目搭建 初始化three.js基础代码 设置环境纹理加载模型 使用Cannon-es实现物理世界 今天简单实现一个three.js的小Demo&#xff0c;加强自己对three知识的掌握与学习&#xff0c;只有在项目中才能灵活将所学知识运用起来&#xff0c;话不多说直接开始。 项目搭建 本…

php取当前是pc还是手机号,PHP 获取访问用户的 IP, 地址 , 访问设备(手机还是PC)并返回手机类型和PC浏览器类型...

我这个方法比较笨 , 但是有效果 , 百度很多都是有问题的 ,基本都是获取地址的API的问题, 我用的是TP , 所以我是把方法放在common中的 , 然后首页调用, 第一个 , 获取访客IP , 这个不多说 , 基本都行 //获取访客ip 实例 function getip() { if (getenv("HTTP_CLIENT_IP&qu…

金山文档手机app服务器异常,手机金山文档出现这个文件大家有没有遇到过,在线求解谢谢了。{...

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 手机金山文档出现这个文件大家有没有遇到过&#xff0c;在线求解谢谢了。{ "version": 3, "UpdateFrequency": 1, "AppIDConfig": { "Global": { "DataReport": { "UserP…