博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php获取当前操作系统类型
阅读量:6530 次
发布时间:2019-06-24

本文共 2129 字,大约阅读时间需要 7 分钟。

如何使用 php 获取当前操作系统类型呢?

严格来说这里分两种情况,一种情况是获取 服务器端 的操作系统类型,一种是获取 客户端 的操作系统类型。

下面将对如何使用php获取这两种情况下的操作系统类型和大家做一些分享。

 

(1)php获取服务器端的操作系统类型

这个时候可以使用php系统自带的常量 PHP_OS 或者系统 php_uname('s')。关于这两者返回的值可能的情况基本有如下几种情况:

CYGWIN_NT-5.1

Darwin
FreeBSD
HP-UX
IRIX64
Linux
NetBSD
OpenBSD
SunOS
Unix
WIN32
WINNT
Windows
CYGWIN_NT-5.1
IRIX64
SunOS
HP-UX
OpenBSD (没有列在Wikipedia)

不过根据具体情况读者还是自行打印出来结果看看最好,也许获得的结果不在上述之列。

(2)php获取客户端的操作系统类型,这里分享一个函数,比网上流传的那些判断更加精准,而且没有bug,函数代码如下:

function getOS(){    $os='';    $Agent=$_SERVER['HTTP_USER_AGENT'];    if (eregi('win',$Agent)&&strpos($Agent, '95')){        $os='Windows 95';    }elseif(eregi('win 9x',$Agent)&&strpos($Agent, '4.90')){        $os='Windows ME';    }elseif(eregi('win',$Agent)&&ereg('98',$Agent)){        $os='Windows 98';    }elseif(eregi('win',$Agent)&&eregi('nt 5.0',$Agent)){        $os='Windows 2000';    }elseif(eregi('win',$Agent)&&eregi('nt 6.0',$Agent)){        $os='Windows Vista';    }elseif(eregi('win',$Agent)&&eregi('nt 6.1',$Agent)){        $os='Windows 7';    }elseif(eregi('win',$Agent)&&eregi('nt 5.1',$Agent)){        $os='Windows XP';    }elseif(eregi('win',$Agent)&&eregi('nt',$Agent)){        $os='Windows NT';    }elseif(eregi('win',$Agent)&&ereg('32',$Agent)){        $os='Windows 32';    }elseif(eregi('linux',$Agent)){        $os='Linux';    }elseif(eregi('unix',$Agent)){        $os='Unix';    }else if(eregi('sun',$Agent)&&eregi('os',$Agent)){        $os='SunOS';    }elseif(eregi('ibm',$Agent)&&eregi('os',$Agent)){        $os='IBM OS/2';    }elseif(eregi('Mac',$Agent)&&eregi('PC',$Agent)){        $os='Macintosh';    }elseif(eregi('PowerPC',$Agent)){        $os='PowerPC';    }elseif(eregi('AIX',$Agent)){        $os='AIX';    }elseif(eregi('HPUX',$Agent)){        $os='HPUX';    }elseif(eregi('NetBSD',$Agent)){        $os='NetBSD';    }elseif(eregi('BSD',$Agent)){        $os='BSD';    }elseif(ereg('OSF1',$Agent)){        $os='OSF1';    }elseif(ereg('IRIX',$Agent)){        $os='IRIX';    }elseif(eregi('FreeBSD',$Agent)){        $os='FreeBSD';    }elseif($os==''){        $os='Unknown';    }    return $os;}

 

转载于:https://www.cnblogs.com/ryanzheng/p/9486487.html

你可能感兴趣的文章
python之set集合基本操作
查看>>
数组排序
查看>>
Linux系统搭建java开发环境
查看>>
【NetApp】模拟器root volume损坏的解决方法
查看>>
正则扩展
查看>>
我的友情链接
查看>>
linux
查看>>
mysql 中的坑!!(持续更新)
查看>>
《系统运维全面解析:技术、管理与实践》纠错汇总
查看>>
Controller计算值传到jsp页面,用session传值
查看>>
用路由器上网说明你们两个人的机子都是内网
查看>>
庸人败于惰,能人败于傲
查看>>
团队代码中Bug太多怎么办?怎样稳步提高团队的代码质量
查看>>
我的移动互联网平台梦
查看>>
awk使用详解
查看>>
【Python】安装MySQL-python-1.2.5
查看>>
磁盘高负荷把MYSQL拖垮(请用火狐浏览器浏览)
查看>>
http和socket之长连接和短连接区别
查看>>
Linux-Shell简介——文件名匹配/输出重定向
查看>>
我的友情链接
查看>>