php如何判斷當前的作業系統是linux還是windows

來源:互聯網
上載者:User
php自身有許多與運行作業系統有關的系統預定義變數,通過這些預定義變數可以很輕鬆的判斷當前的系統是 windows 還是 Linux 還是 unix。

下面就一一列出這些比較實用的預定義變數並稍作分析。

php_uname()

PHP_OS
DIRECTORY_SEPARATOR

PATH_SEPARATORphp_uname()這個函數的意義在於返回當前PHP所啟動並執行系統的資訊,下面對這個函數詳細說明一下:

/**

* 功能:返回當前PHP所啟動並執行系統的資訊
* @param string $mode
* 'a': 返回所有資訊
* 's': 作業系統的名稱,如FreeBSD
* 'n': 主機的名稱,如cnscn.org
* 'r': 版本名,如5.1.2-RELEASE
* 'v': 作業系統的版本號碼
* 'm': 核心類型,如i386
* @return string
*/

string php_uname([string $mode]);

使用樣本:

echo php_uname();

echo php_uname('s');

PHP_OS

php內建的一個內建常量,返回的是伺服器端的作業系統標示,值為(WINNT,WIN32等)使用樣本:

echo strtoupper(substr(PHP_OS,0,3))==='WIN'?'windows 伺服器':'不是 widnows 伺服器';

DIRECTORY_SEPARATOR php內建的一個內建常量,用來顯示系統分隔字元的命令,不需要任何定義與包含即可直接使用。

眾所周知,在windows下路徑分隔字元是\(當然/在部分系統上也是可以正常啟動並執行),在linux上路徑的分隔字元是/,DIRECTORY_SEPARATOR 這個額常量存在的意義就是會根據不同的作業系統來顯示不同的分隔字元。

使用 DIRECTORY_SEPARATOR 判斷作業系統類型的樣本如下:

echo DIRECTORY_SEPARATOR=='\\'?'windows 伺服器':'不是 widnows 伺服器';

PATH_SEPARATOR 是一個常量,在linux系統中是一個" : "號,Windows上是一個";"號。

使用 PATH_SEPARATOR 判斷作業系統類型的樣本如下:

echo PATH_SEPARATOR==';'?'windows 伺服器':'不是 widnows 伺服器';
  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.