在實(shí)際開(kāi)發(fā)中,往往會(huì)因?yàn)椴僮飨到y(tǒng)不同,有不同的處理方式。那么怎么判斷用戶操作系統(tǒng)是Windows還是Linux?獲取當(dāng)前操作系統(tǒng)的類型?下面本篇文章就來(lái)給大家介紹幾種獲取當(dāng)前操作系統(tǒng)類型方法。
我們都知道想要知道電腦中操作系統(tǒng)的類型,可以指定鼠標(biāo)右擊“計(jì)算機(jī)”-“屬性”即可,就可以在彈出的窗口中看到版本信息:
那么怎么用PHP代碼來(lái)獲取當(dāng)前操作系統(tǒng)的類型?其實(shí)PHP中內(nèi)置了一些變量(常量)或者函數(shù)就可以實(shí)現(xiàn),今天本篇文章就來(lái)帶大家了解一下這些變量(常量)或者函數(shù)。
1、利用PHP環(huán)境變量HTTP_USER_AGENT
HTTP_USER_AGENT
變量可用于獲取用戶客戶端信息,包括操作系統(tǒng)和瀏覽器等。
只需要先使用HTTP_USER_AGENT獲取用戶客戶端信息,然后對(duì)該變量進(jìn)行解析并判斷操作系統(tǒng)的類型即可。
下面看看實(shí)現(xiàn)代碼:
<?php header("content-type:text/html;charset=utf-8"); $viewer = getenv("HTTP_USER_AGENT"); $platform = ""; if (preg_match("/Windows/i", "$viewer")) { $platform = "Windows"; } else if (preg_match("/Linux/i", "$viewer")) { $platform = "Linux"; } echo("當(dāng)前操作系統(tǒng)類型是:$platform"); ?>
輸出結(jié)果:
2、使用預(yù)定義常量PHP_OS
PHP_OS
常量可以獲取當(dāng)前的操作系統(tǒng)名稱。直接輸出就行。
<?php header("content-type:text/html;charset=utf-8"); echo "當(dāng)前操作系統(tǒng)類型是:".PHP_OS; ?>
輸出結(jié)果:
3、使用php_uname()函數(shù)
php_uname — 返回運(yùn)行 PHP 的系統(tǒng)的有關(guān)信息。
語(yǔ)法:php_uname ([$mode])
mode 是單個(gè)字符,用于定義要返回什么信息:
‘a(chǎn)’:此為默認(rèn)。包含序列 “s n r v m” 里的所有模式。
’s’:操作系統(tǒng)名稱。例如: FreeBSD。
‘n’:主機(jī)名。例如: localhost.example.com。
‘r’:版本名稱,例如: 5.1.2-RELEASE。
‘v’:版本信息。操作系統(tǒng)之間有很大的不同。
‘m’:機(jī)器類型。例如:i386。
php_uname()函數(shù)會(huì)返回運(yùn)行php的操作系統(tǒng)的相關(guān)描述,和 phpinfo() 最頂端上輸出的是同一個(gè)字符串。 如果僅僅要獲取操作系統(tǒng)的名稱??梢钥紤]使用常量 PHP_OS,不過(guò)要注意該常量會(huì)包含 PHP 構(gòu)建(built)時(shí)的操作系統(tǒng)名。
下面看看實(shí)現(xiàn)代碼:
<?php header("content-type:text/html;charset=utf-8"); echo "當(dāng)前操作系統(tǒng)類型是:".php_uname('s'); ?>
輸出結(jié)果:
最后給大家推薦最新最全面的《PHP視頻教程》~快來(lái)學(xué)習(xí)吧!