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



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


SyntaxHighlighter.highlight();