Php/docs/function.php-uname
php_uname
(PHP 4 >= 4.0.2, PHP 5, PHP 7)
php_uname — 返回运行 PHP 的系统的有关信息
说明
php_uname
([ string $mode
= "a"
] ) : string
php_uname() 返回了运行 PHP 的操作系统的描述。
这和 phpinfo() 最顶端上输出的是同一个字符串。
如果仅仅要获取操作系统的名称。可以考虑使用常量 PHP_OS
,不过要注意该常量会包含 PHP 构建(built)时的操作系统名。
在一些旧的 UNIX 平台,它有可能无法检测到当前系统的信息,然后会还原显示成构建 PHP 时的系统信息。 这仅仅在你的 uname() 函数库不存在或无法运行时发生。
参数
mode
mode
是单个字符,用于定义要返回什么信息:
-
'a'
:此为默认。包含序列"s n r v m"
里的所有模式。 -
's'
:操作系统名称。例如:FreeBSD
。 -
'n'
:主机名。例如:localhost.example.com
。 -
'r'
:版本名称,例如:5.1.2-RELEASE
。 -
'v'
:版本信息。操作系统之间有很大的不同。 -
'm'
:机器类型。例如:i386
。
-
返回值
返回描述字符串。
范例
Example #1 一些 php_uname() 的例子
<?phpecho php_uname();echo PHP_OS;/* 比如有些会输出:Linux localhost 2.4.21-0.13mdk #1 Fri Mar 14 15:08:06 EST 2003 i686LinuxFreeBSD localhost 3.2-RELEASE #15: Mon Dec 17 08:46:02 GMT 2001FreeBSDWindows NT XN1 5.1 build 2600WINNT*/if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') { echo 'This is a server using Windows!';} else { echo 'This is a server not using Windows!';}?>
同样可以方便地使用一些相关的 PHP 预定义常量,例如:
Example #2 一些系统相关常量的例子
<?php// *nixecho DIRECTORY_SEPARATOR; // /echo PHP_SHLIB_SUFFIX; // soecho PATH_SEPARATOR; // :// Win*echo DIRECTORY_SEPARATOR; // \echo PHP_SHLIB_SUFFIX; // dllecho PATH_SEPARATOR; // ;?>