当前位置: 首页 > news >正文

php如何检测设备是手机,PHP检测终端设备是平板、手机还是电脑

$ua = $_SERVER[‘HTTP_USER_AGENT‘];

function userAgent($ua){

$iphone = strstr(strtolower($ua), ‘mobile‘); //Search for ‘mobile‘ in user-agent (iPhone have that)

$android = strstr(strtolower($ua), ‘android‘); //Search for ‘android‘ in user-agent

$windowsPhone = strstr(strtolower($ua), ‘phone‘); //Search for ‘phone‘ in user-agent (Windows Phone uses that)

function androidTablet($ua){ //Find out if it is a tablet

if(strstr(strtolower($ua), ‘android‘) ){//Search for android in user-agent

if(!strstr(strtolower($ua), ‘mobile‘)){ //If there is no ‘‘mobile‘ in user-agent (Android have that on their phones, but not tablets)

return true;

}

}

}

$androidTablet = androidTablet($ua); //Do androidTablet function

$ipad = strstr(strtolower($ua), ‘ipad‘); //Search for iPad in user-agent

if($androidTablet || $ipad){ //If it‘s a tablet (iPad / Android)

return ‘tablet‘;

}

elseif($iphone && !$ipad || $android && !$androidTablet || $windowsPhone){ //If it‘s a phone and NOT a tablet

return ‘mobile‘;

}

else{ //If it‘s not a mobile device

return ‘desktop‘;

}

}

echo userAgent($ua);

?>

相关文章:

  • ACDSee v8.0最完美汉化破解补丁发布,永不过期,还有绿色版
  • Linux创建自己命令,Linux命令别名:定义自己的命令
  • BT下载]为大家献上真正原版,绝无改动的工行正版免激活XP,OFFICE2003
  • 如何查看后被暂停的进程 linux,关于Linux 进程你要知道的事
  • 【热度·推荐】超强推荐,大家齐用VNN内网穿透版的电驴,加速下载快行动!
  • linux文件子目录,linux显示指定目录下所有的文件,子目录及子目录的文件
  • Windows Vista 的版本区别已经公布,可能分成7个版本
  • linux网卡漂移问题,KVM上linux虚拟机clone后,网卡设备名eth0漂移到eth1的解决方法...
  • 打算组装电脑的配置
  • linux 进程崩溃 堆栈,c – 当程序崩溃时如何自动生成堆栈跟踪
  • 彻底删除3721的简单方法
  • linux9屏幕大小,求救RedHat9修改屏幕分辨率
  • 李开复的Blog
  • linux qt no valid kits found,Qt新建项目No valid kits found解决思路
  • linux who命令详解,Linux who命令详解
  • [笔记] php常见简单功能及函数
  • 【干货分享】SpringCloud微服务架构分布式组件如何共享session对象
  • 【刷算法】求1+2+3+...+n
  • Centos6.8 使用rpm安装mysql5.7
  • Django 博客开发教程 8 - 博客文章详情页
  • HTTP--网络协议分层,http历史(二)
  • JavaScript 是如何工作的:WebRTC 和对等网络的机制!
  • Linux gpio口使用方法
  • overflow: hidden IE7无效
  • quasar-framework cnodejs社区
  • text-decoration与color属性
  • thinkphp5.1 easywechat4 微信第三方开放平台
  • 分布式任务队列Celery
  • 蓝海存储开关机注意事项总结
  • 力扣(LeetCode)22
  • 力扣(LeetCode)56
  • 前端每日实战:61# 视频演示如何用纯 CSS 创作一只咖啡壶
  • 异常机制详解
  • 用Node EJS写一个爬虫脚本每天定时给心爱的她发一封暖心邮件
  • 智能合约Solidity教程-事件和日志(一)
  • 《码出高效》学习笔记与书中错误记录
  • Java性能优化之JVM GC(垃圾回收机制)
  • mysql 慢查询分析工具:pt-query-digest 在mac 上的安装使用 ...
  • 智能情侣枕Pillow Talk,倾听彼此的心跳
  • ​渐进式Web应用PWA的未来
  • ​香农与信息论三大定律
  • # 数论-逆元
  • ### Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLTr
  • #多叉树深度遍历_结合深度学习的视频编码方法--帧内预测
  • #基础#使用Jupyter进行Notebook的转换 .ipynb文件导出为.md文件
  • #控制台大学课堂点名问题_课堂随机点名
  • (JSP)EL——优化登录界面,获取对象,获取数据
  • (LNMP) How To Install Linux, nginx, MySQL, PHP
  • (Redis使用系列) SpirngBoot中关于Redis的值的各种方式的存储与取出 三
  • (翻译)Quartz官方教程——第一课:Quartz入门
  • (剑指Offer)面试题34:丑数
  • (考研湖科大教书匠计算机网络)第一章概述-第五节1:计算机网络体系结构之分层思想和举例
  • (十一)手动添加用户和文件的特殊权限
  • (一)Java算法:二分查找
  • (原创)Stanford Machine Learning (by Andrew NG) --- (week 9) Anomaly DetectionRecommender Systems...