ecshop获取客户端操作系统

<?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;
}
?>

 

转载于:https://www.cnblogs.com/lizhaoyao/p/4535168.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/358771.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

求有向图中两点最短距离java_算法题解:求有向图中的最短路径(JAVA+DFS算法实现)...

求有向图中的最短路径(JAVADFS算法实现)问题描述给定一个有向图&#xff0c;如下图所示&#xff0c;求从1号顶点到5号顶点的最短路径。输入数据格式为第一行输入顶点数和边数&#xff0c;从第二行开始每一行输入3个整数&#xff0c;分别代表连接顶点的边和权重。例如&#xff1…

B站学习资源汇总

一个B站就足够解决绝大多数学习问题。 AI入门 1、Crash Course AI https://space.bilibili.com/276373762/channel/detail?cid=101907 课程介绍:该课程出自Crash Course,首发YouTube,单个视频时长均在10分钟左右。视频节奏非常好,语速偏快,适合下饭时间入门了解。主讲…

30个Java入门技巧和最佳实践

Java是最流行的编程语言之一-无论是Win应用程序&#xff0c;Web应用程序&#xff0c;移动&#xff0c;网络&#xff0c;消费电子产品&#xff0c;机顶盒设备&#xff0c;Java随处可见。 在Java上运行的设备超过30亿。 据甲骨文称 &#xff0c;正在使用50亿张Java卡。 超过900…

Postman使用详解

一、Postman背景介绍 用户在开发或者调试网络程序或者是网页B/S模式的程序的时候是需要一些方法来跟踪网页请求的&#xff0c;用户可以使用一些网络的监视工具比如著名的Firebug等网页调试工具。今天给大家介绍的这款网页调试工具不仅可以调试简单的css、html、脚本等简单的网…

java double精确比较,Java float比double更精确?

Code:class Main {public static void main (String[] args) {System.out.print("float: ");System.out.println(1.35f-0.00026f);System.out.print("double: ");System.out.println(1.35-0.00026);}}Output:float: 1.34974double: 1.3497400000000002??…

《Bash 脚本教程》免费发布啦,开源!

一共写了 20 节&#xff0c;Bash 脚本编程的主要语法&#xff0c;都包括在内了&#xff0c;日常使用应该足够。也欢迎初学者使用这个教程&#xff0c;学习 Bash。 这个教程是开源的&#xff0c;你可以克隆它的代码仓库&#xff0c;放在本地&#xff0c;也可以提交 issue 和 pu…

linux脚本编程(shell)浅介 (转载)

linux脚本(shell)编程 啊&#xff0c;昨天上网看到一篇讲 linux/unix shell 的文章&#xff0c;想想自己最后写这东西也是一年前的事了&#xff0c;想想都快忘光了。 还是整理一下&#xff0c;做一次回顾&#xff0c;以后说不定还用得上&#xff1b;帖出来&#xff0c;方便第一…

postman插件下载安装教程(详细)

一、前言 postman是一款强大网页接口调试工具&#xff0c;我们在平时开发过程中经常会使用到&#xff0c;一般使用最多的是postman的客户端&#xff0c;实际上postman在谷歌浏览器上也提供了插件&#xff0c;可以不必要安装客户端进行接口测试工作。 建议更新到最新谷歌浏览器&…

java显示星期几_Java 使用日历显示星期几

import java.util.Calendar;/*nowjava.com 提 供*/public class Main {public static void main(String[] args) {//create Calendar instanceCalendar now Calendar.getInstance();System.out.println("Current date : " (now.get(Calendar.MONTH) 1) "-&qu…

SharePoint 2013 workflow cannot start automatically when you logged in site as a system account

I have created one simple workflow on custom list using SharePoint designer 2013.While designing workflow, I have unchecked the “Allow this workflow to be manually started” and select rest two options like “Start workflow automatically when an item is c…

10个 IDEA 插件来解放你的双手

不知道喜欢IDEA的你装了没有? 1、GenerateAllSetter 实际的开发中,可能会经常为某个对象中多个属性进行 set 赋值,尽管可以用BeanUtil.copyProperties()方式批量赋值,但这种方式有一些弊端,存在属性值覆盖的问题,所以不少场景还是需要手动 set。如果一个对象属性太多 s…

哥斯拉Godzilla shell管理工具

各大厂商的waf不断&#xff0c;在静态查杀、流量通信等方面对webshell进行拦截&#xff0c;众红队急需一款优秀的权限管理工具&#xff0c;冰蝎3.0的发布可能缓解了流量加密的困境&#xff0c;但是冰蝎3.0的bug众多&#xff0c;很多朋友甚至连不上冰蝎的shell&#xff0c; 于是…

使用Fabric8在Kubernetes中使用Camel和CDI

序幕 我最近在博客上发表了使用CDI注入Kubernetes服务的信息 。 在本文中&#xff0c;我将更进一步&#xff0c;将Apache Camel带入图片。 因此&#xff0c;我将使用Camel的CDI支持来连接我的组件和路由&#xff0c;以及Fabric8的CDI扩展来自动将Kubernetes服务注入到我的组件中…

sql双表查询java代码_原生sql 多表查询

Session session Session session super.getSession();session.flush();Connection con session.connection();String uid"";StringBuffer sql new StringBuffer();sql.append("select a.user_Id from user_info as a");//user用户表sql.append( left j…

写lua时需要注意的地方

条件语句判断时&#xff0c;只有false和nil会导致判断为假&#xff0c;其他的任何值都为真。 Lua 的字符串与编码无关&#xff1b; 它不关心字符串中具体内容。标准 Lua 使用 64 位整数和双精度&#xff08;64 位&#xff09;浮点数&#xff0c; 但你也可以把 Lua 编译成使用 3…

免费的人脸识别SDK(基于 Java 实现的人脸识别功能)

人脸识别技术是很复杂的&#xff0c;自己用Java手撕一个识别算法有点不切实际&#xff0c; 毕竟实力不允许我这么嚣张&#xff0c;还是借助三方的SDK吧&#xff01; 免费的人脸识别SDK&#xff1a; ArcSoft:&#xff0c;地址&#xff1a;https://ai.arcsoft.com.cn 基于 Jav…

git信息泄露漏洞

git信息泄露漏洞 当前大量开发人员使用git进行版本控制&#xff0c;对站点自动部署。如果配置不当&#xff0c;可能会将.git文件夹直接部署到线上环境。这就引起了git泄露漏洞。 危害 攻击者可以利用该漏洞下载git文件夹里的所有内容。如果文件夹内有敏感信息比如站点源码、数据…

java实验文法报告_西安邮电大学编译原理LL文法分析器实验(java).doc

西安邮电大学编译原理LL文法分析器实验(java)《编译原理》实验报告题目: 语法分析器的制作学生姓名:班 级: 软件1202学 号:指导教师:成 绩:西安邮电大学计算机学院2015 年 6 月 7 日一&#xff1a;实验目的熟悉语法分析的过程&#xff1b;理解相关文法的步骤&#xff1b;熟悉Fi…

PHP 数据库 ODBC

PHP 数据库 ODBC ODBC 是一种应用程序编程接口&#xff08;Application Programming Interface&#xff0c;API&#xff09;&#xff0c;使我们有能力连接到某个数据源&#xff08;比如一个 MS Access 数据库&#xff09;。 创建 ODBC 连接 通过一个 ODBC 连接&#xff0c;您可…

bash简介

目录 Shell 的含义 Shell 的种类 命令行环境 终端模拟器 命令行提示符 进入和退出方法 Shell 和 Bash 的历史 <