您现在的位置是:首页 > 学无止境> 程序人生网站首页慢生活

php获取当前操作系统类型

张帅2019-11-03 794人围观
简介 如何使用 php 获取当前操作系统类型呢? 严格来说这里分两种情况,一种情况是获取 服务器端 的操作系统类型,一种是获取 客户端 的操作系统类型。 下面将对如何使用php获取这两种情况下的操作系统类型和大家做一些分享。

如何使用 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;
}


文章评论

    已有 3 条评论

    TheBaiRuo

    名称:妙笔生花
    简介:一生很长,会遇见很多出现在你生命中的过客!
    网址: https://blog.zh66.club
    LOGO:http://blog.zh66.club/usr/themes/Miracles/favicon.ico

    妙笔生花 2019-11-01 14:44

    TheBaiRuo

    名称:皮皮家园
    简介:要让平凡的每一天,变得不再平凡!
    网址: https://www.zh66.club
    LOGO:https://cdn.jsdelivr.net/gh/Zevs6/CDN@3.0/img/avatar.jpg

    皮皮家园 2019-11-01 20:44

    admin

    小伙伴们快来评论留言吧!

    admin 2019-11-01 11:15

    添加新评论