<?php
/**
* 获得客户端的操作系统
*
* @access private
* @return void
*/
function get_os()
{
if (empty($_SERVER['HTTP_USER_AGENT']))
{
return 'Unknown';
} $agent = strtolower($_SERVER['HTTP_USER_AGENT']);
$os = ''; if (strpos($agent, 'win') !== false)
{
if (strpos($agent, 'nt 5.1') !== false)
{
$os = 'Windows XP';
}
elseif (strpos($agent, 'nt 5.2') !== false)
{
$os = 'Windows 2003';
}
elseif (strpos($agent, 'nt 5.0') !== false)
{
$os = 'Windows 2000';
}
elseif (strpos($agent, 'nt 6.0') !== false)
{
$os = 'Windows Vista';
}
elseif (strpos($agent, 'nt') !== false)
{
$os = 'Windows NT';
}
elseif (strpos($agent, 'win 9x') !== false && strpos($agent, '4.90') !== false)
{
$os = 'Windows ME';
}
elseif (strpos($agent, '98') !== false)
{
$os = 'Windows 98';
}
elseif (strpos($agent, '95') !== false)
{
$os = 'Windows 95';
}
elseif (strpos($agent, '32') !== false)
{
$os = 'Windows 32';
}
elseif (strpos($agent, 'ce') !== false)
{
$os = 'Windows CE';
}
}
elseif (strpos($agent, 'linux') !== false)
{
$os = 'Linux';
}
elseif (strpos($agent, 'unix') !== false)
{
$os = 'Unix';
}
elseif (strpos($agent, 'sun') !== false && strpos($agent, 'os') !== false)
{
$os = 'SunOS';
}
elseif (strpos($agent, 'ibm') !== false && strpos($agent, 'os') !== false)
{
$os = 'IBM OS/2';
}
elseif (strpos($agent, 'mac') !== false && strpos($agent, 'pc') !== false)
{
$os = 'Macintosh';
}
elseif (strpos($agent, 'powerpc') !== false)
{
$os = 'PowerPC';
}
elseif (strpos($agent, 'aix') !== false)
{
$os = 'AIX';
}
elseif (strpos($agent, 'hpux') !== false)
{
$os = 'HPUX';
}
elseif (strpos($agent, 'netbsd') !== false)
{
$os = 'NetBSD';
}
elseif (strpos($agent, 'bsd') !== false)
{
$os = 'BSD';
}
elseif (strpos($agent, 'osf1') !== false)
{
$os = 'OSF1';
}
elseif (strpos($agent, 'irix') !== false)
{
$os = 'IRIX';
}
elseif (strpos($agent, 'freebsd') !== false)
{
$os = 'FreeBSD';
}
elseif (strpos($agent, 'teleport') !== false)
{
$os = 'teleport';
}
elseif (strpos($agent, 'flashget') !== false)
{
$os = 'flashget';
}
elseif (strpos($agent, 'webzip') !== false)
{
$os = 'webzip';
}
elseif (strpos($agent, 'offline') !== false)
{
$os = 'offline';
}
else
{
$os = 'Unknown';
} return $os;
}
?>

ecshop获取客户端操作系统的更多相关文章

  1. js获取客户端操作系统

    function detectOS() { var sUserAgent = navigator.userAgent; var isWin = (navigator.platform == " ...

  2. PHP获取客户端操作系统,浏览器,语言,IP,IP归属地等

    <?php class Client { ////获得访客浏览器类型 function Get_Browser(){ if(!empty($_SERVER['HTTP_USER_AGENT']) ...

  3. JS 获取客户端操作系统

    function detectOS() {     var sUserAgent = navigator.userAgent;     var isWin = (navigator.platform ...

  4. C#获取客户端相关信息

    1.获取Uri参数 2.获取客户端操作系统.浏览器信息 3.获取客户端分辨率 4.C#判断用户是手机访问还是PC访问

  5. C# 服务端获取客户端 系统/浏览器/IP

    /// <summary> /// 获取客户端操作系统版本 /// </summary> /// <returns></returns> public ...

  6. .NET 获取客户端的操作系统版本、浏览器版本和IP地址

    我们在使用.NET做网站的时候,很多情况下需要需要知道客户端的操作系统版本和浏览器版本,怎样获取客户端的操作系统和浏览器版本呢?我们可以通过分析UserAgent来获取. .NET 获取客户端的操作系 ...

  7. .NET获取客户端的操作系统、IP地址、浏览器版本

    获取客户端的操作系统: #region 获取操作系统版本号 /// <summary> /// 获取操作系统版本号 /// </summary> /// <returns ...

  8. 获取ip,获取客户端浏览器,获取客户端访问操作系统,获取客户端访问设备

    /** * 获取ip */ public static function getIp() { if (getenv('HTTP_CLIENT_IP')) { $ip = getenv('HTTP_CL ...

  9. php获取客户端IP地址、所在地、操作系统、浏览器信息

    本实例主要实现获取客户端的IP,再根据获取的IP获取所在地,还可以获取用户当前电脑使用的操作系统以及用户是通过什么浏览器进行访问的. 您可以在这里查看具体演示和下载demo  http://www.j ...

随机推荐

  1. 3D math primer for graphics and game development

    三角网格(Triangle Mesh) 最简单的情形,多边形网格不过是一个多边形列表:三角网格就是全部由三角形组成的多边形网格.多边形和三角网格在图形学和建模中广泛使用,用来模拟复杂物体的表面,如建筑 ...

  2. [lua]尝试一种Case语法糖

    function CaseT(arg) function proxy(caller) caller.yield(r) end -- proxy return function (cond) if (c ...

  3. Android 6.0 Permission权限与安全机制

    Marshmallow版本权限修改 android的权限系统一直是首要的安全概念,因为这些权限只在安装的时候被询问一次.一旦安装了,app可以在用户毫不知晓的情况下访问权限内的所有东西,而且一般用户安 ...

  4. DevExpress 控件使用之XtraReport

    DevExpress 系列控件,相信大家做WinForm开发已经再熟悉不过了.报表工具对大家来说,选择面很广,.net 本身也提供了非常好的设计工具.下面主要介绍通过DevExpress XtraRe ...

  5. 桂电在线-php-提取菜单到配置文件

    新建存储菜单的配置文件 menus.php,并配置菜单 <?php if ( ! defined('BASEPATH')) exit('No direct script access allow ...

  6. Hibernate报错 ** is not mapping

    使用easyui+struts+hibernate 新增加一个页面功能时,总是报错,后来发现是数据库语句,不能写表名称,而是要写映射的数据库实体类名 1.struts文件修改增加action < ...

  7. 小爬虫。爬取网站多页的通知标题并存取在txt文档里。

    爬取网页中通知标题的内容展示: this is  1  page!<精算学综合>科目考试参考大纲2016年上半年研究生开题报告评议审核结果公示[答辩]2016下半年研究生论文答辩及学位评定 ...

  8. QNetworkRequest 请求类

    QNetworkRequest Class Header:    #include <QNetworkRequest>qmake:     QT += networkSince:     ...

  9. QFTP走了以后QNetworkAccessManager出现了

    QNetworkAccessManager Class Header:    #include <QNetworkAccessManager>qmake:     QT += networ ...

  10. The Lost Art of C Structure Packing

    对齐要求 首先需要了解的是,对于现代处理器,C编译器在内存中放置基本C数据类型的方式受到约束,以令内存的访问速度更快. 在x86或ARM处理器中,基本C数据类型通常并不存储于内存中的随机字节地址.实际 ...