Home  >  Article  >  Backend Development  >  How to get the operating system type in php

How to get the operating system type in php

墨辰丷
墨辰丷Original
2018-06-06 15:49:341620browse

This article mainly introduces how to obtain the operating system type in PHP. Interested friends can refer to it. I hope it will be helpful to everyone.

How to use php to get the current operating system type? Strictly speaking, there are two situations, one is to obtain the operating system type of the server, and the other is to obtain the operating system type of the client. The author below will share with you how to use php to obtain the operating system type in these two situations.
(1)php obtains the operating system type of server-sideAt this time, you can use the constant PHP_OS that comes with the php system or System functionphp_uname('s').

The possible situations regarding the values ​​returned by these two basically include the following situations:
  • 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

However, depending on the specific situation, it is best for readers to print out the results themselves and see. The results may not be the same. Among the above.


(2) PHP obtains the operating system type of client. Here is a function that is more accurate than those circulating on the Internet and has no bugs. The function code is as follows:

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

Summary: The above is the entire content of this article, I hope it will be helpful to everyone's study.

Related recommendations:

Usage and example analysis of reserved variables in PHP template engine Smarty

About how to prevent external maliciousness in PHP Submit the method of calling the ajax interface

PHP template engine Smarty custom variable mediator usage and example analysis

The above is the detailed content of How to get the operating system type in php. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn