欢迎来到php自学网~
阅读模式:

php获取用户系统名称信息

查看:1020  回复:0  类型:  来源:php自学网  标签 php

    php通过用户代理头获取来访用户的系统名信息,使用超全局变量$_SERVER['HTTP_USER_AGENT']返回字符串进行匹配得到相应的系统名称

详细代码:

function get_os(){

    $agent = $_SERVER['HTTP_USER_AGENT'];
    $os = false;
 
    if (preg_match('/win/i', $agent) && strpos($agent, '95'))
    {
    
      $os = 'Windows 95';
      
    }
    else if (preg_match('/win 9x/i', $agent) && strpos($agent, '4.90'))
    {
    
      $os = 'Windows ME';
      
    }
    else if (preg_match('/win/i', $agent) && preg_match('/98/i', $agent))
    {
    
      $os = 'Windows 98';
      
    }
    else if (preg_match('/win/i', $agent) && preg_match('/nt 6.0/i', $agent))
    {
    
      $os = 'Windows Vista';
      
    }
    else if (preg_match('/win/i', $agent) && preg_match('/nt 6.1/i', $agent))
    {
    
      $os = 'Windows 7';
      
    }
      else if (preg_match('/win/i', $agent) && preg_match('/nt 6.2/i', $agent))
    {
    
      $os = 'Windows 8';
      
    }else if(preg_match('/win/i', $agent) && preg_match('/nt 10.0/i', $agent))
    {
    
      $os = 'Windows 10';
      
    }else if (preg_match('/win/i', $agent) && preg_match('/nt 5.1/i', $agent))
    {
    
      $os = 'Windows XP';
      
    }
    else if (preg_match('/win/i', $agent) && preg_match('/nt 5/i', $agent))
    {
    
      $os = 'Windows 2000';
      
    }
    else if (preg_match('/win/i', $agent) && preg_match('/nt/i', $agent))
    {
    
      $os = 'Windows NT';
      
    }
    else if (preg_match('/win/i', $agent) && preg_match('/32/i', $agent))
    {
    
      $os = 'Windows 32';
      
    }
    else if (preg_match('/linux/i', $agent))
    {
    
      $os = 'Linux';
      
    }
    else if (preg_match('/unix/i', $agent))
    {
    
      $os = 'Unix';
      
    }
    else if (preg_match('/sun/i', $agent) && preg_match('/os/i', $agent))
    {
    
      $os = 'SunOS';
      
    }
    else if (preg_match('/ibm/i', $agent) && preg_match('/os/i', $agent))
    {
    
      $os = 'IBM OS/2';
      
    }
    else if (preg_match('/Mac/i', $agent) && preg_match('/PC/i', $agent))
    {
    
      $os = 'Macintosh';
      
    }
    else if (preg_match('/PowerPC/i', $agent))
    {
    
      $os = 'PowerPC';
      
    }
    else if (preg_match('/AIX/i', $agent))
    {
    
      $os = 'AIX';
      
    }
    else if (preg_match('/HPUX/i', $agent))
    {
    
      $os = 'HPUX';
      
    }
    else if (preg_match('/NetBSD/i', $agent))
    {
    
      $os = 'NetBSD';
      
    }
    else if (preg_match('/BSD/i', $agent))
    {
    
      $os = 'BSD';
      
    }
    else if (preg_match('/OSF1/i', $agent))
    {
    
      $os = 'OSF1';
      
    }
    else if (preg_match('/IRIX/i', $agent))
    {
    
      $os = 'IRIX';
      
    }
    else if (preg_match('/FreeBSD/i', $agent))
    {
    
      $os = 'FreeBSD';
      
    }
    else if (preg_match('/teleport/i', $agent))
    {
    
      $os = 'teleport';
      
    }
    else if (preg_match('/flashget/i', $agent))
    {
    
      $os = 'flashget';
      
    }
    else if (preg_match('/webzip/i', $agent))
    {
    
      $os = 'webzip';
      
    }
    else if (preg_match('/offline/i', $agent))
    {
    
      $os = 'offline';
      
    }else if (preg_match('/iPhone OS 8/i', $agent))
    {
    
      $os = 'iOS 8';
      
    }else if (preg_match('/YisouSpider/i', $agent))
    {
    
      $os = '一搜引擎';
      
    }else if (preg_match('/Yahoo! Slurp/i', $agent))
    {
    
      $os = '雅虎引擎';
      
    }else if (preg_match('/iPhone OS 6/i', $agent))
    {
    
      $os = 'iOS 6';
      
    }
    else if (preg_match('/Baiduspider/i', $agent))
    {
    
      $os = '百度引擎';
      
    }else if (preg_match('/iPhone OS 10/i', $agent))
    {
    
      $os = 'iOS 10';
      
    }else if (preg_match('/Mac OS X 10/i', $agent))
    {
    
      $os = 'Mac OS 10';
      
    }
    else if (preg_match('/Ahrefs/i', $agent))
    {
    
      $os = 'Ahrefs SEO 引擎';
      
    }
    else if (preg_match('/JikeSpider/i', $agent))
    {
    
      $os = '即刻引擎';
      
    }else if (preg_match('/Googlebot/i', $agent))
    {
    
      $os = '谷歌引擎';
      
    }else if(preg_match('/bingbot/i',$agent))
    {
    
        $os = '必应引擎';
         
    }else if(preg_match('/iPhone OS 7/i',$agent))
    {
    
        $os = 'iOS 7';
        
    }else if(preg_match('/Sogou web spider/i',$agent))
    {
    
        $os = '搜狗引擎';
        
    }else if(preg_match('/IP-Guide.com Crawler/i',$agent))
    {
    
        $os = 'IP-Guide Crawler 引擎';
        
    }else if(preg_match('/VenusCrawler/i',$agent))
    {
    
        $os = 'VenusCrawler 引擎';
        
    }
    else
    {
    
      $os = $agent;
      
    }
    
    return $os;
      
   }


分享到:
0 0

*有问题之处烦请在评论中指出,非常感谢!
不是我想要的内容,继续搜索:

扫描二维码手机查看

发布评论:


登录:
  表情:
评论话题
推荐阅读:
session与cookie的区别   阅读:988php 使用 smtp.php 类在线发送邮件功能   阅读:1208csv文件一键导入数据到mysql数据库   阅读:1392mysql 为什么添加索引可以提高访问速度   阅读:1160一步步带你,如何网站架构   阅读:816php 生成图片,给图片加水印   阅读:1718crontab+shell脚本实现定时备份mysql数据库   阅读:1056爱编程,也爱健康   阅读:399php连接redis   阅读:1159面试的时候回去等通知,等电话的真实意思   阅读:3240php删除一个文件夹内的所有文件夹和文件   阅读:1060shell脚本统计当前服务器并发连接数   阅读:960mysql的四种索引类型   阅读:850php压缩页面的html代码一行显示   阅读:1124霍金24岁博士毕业论文在线预览   阅读:590移动端js触摸touch详解(附带案例源码)   阅读:2500linux命令中执行php脚本   阅读:839linux命令中执行php脚本   阅读:839centos7开启交换内存   阅读:1252centos 7 添加 redis 3.2.9 开机启动脚本   阅读:1992最简单的Banner轮播左右切换效果代码及实现思路(附带源码)   阅读:8986企业让你去面试,可能不是真的招人   阅读:1035知乎百万赞作者告诉你:年薪百万的人都在靠什么赚钱   阅读:687centos 7 设置 nginx-1.11.10 开机启动   阅读:1607mysql 为什么添加索引可以提高访问速度   阅读:1160浅谈javascript的函数节流   阅读:763一键分享到QQ空间、QQ好友、新浪微博、微信代码   阅读:3090phpexcel 超简单从数据库一键导出数据到excel教程   阅读:1415小米手机端商城rem适配原理   阅读:2075php压缩页面的html代码一行显示   阅读:1124网站性能优化-页面静态缓存   阅读:1171php压缩页面的html代码一行显示   阅读:1124一键分享到QQ空间、QQ好友、新浪微博、微信代码   阅读:3090centos 7 安装 samba 服务   阅读:906小米手机端商城rem适配原理   阅读:2075纯干货,程序员面试的超实用技巧   阅读:732封装php redis缓存操作类   阅读:810知乎百万赞作者告诉你:年薪百万的人都在靠什么赚钱   阅读:687csv文件一键导入数据到mysql数据库   阅读:1392霍金24岁博士毕业论文在线预览   阅读:590session与cookie的区别   阅读:988crontab+shell脚本实现定时备份mysql数据库   阅读:1056centos 7 修改系统屏幕分辨率   阅读:10188shell脚本统计当前服务器并发连接数   阅读:960centos 7 安装 nginx-1.11.10   阅读:2144栈和堆的区别   阅读:774php冒泡排序法   阅读:478php 获取当前前后年、月、星期、日、时分秒的时间   阅读:1311爱编程,也爱健康   阅读:399网站局部小图片优化-base64编码图片   阅读:1516