我本機開發用的是winXP,但是上傳的服務器是linux,每次上傳前總是要改一下配置文件,還有其他一些什麼的,
現在通過判斷當前服務器的類型來決定執行什麼樣的程序,那麼php如何判斷所處服務器是什麼類型呢
php有許多系統預定義變量,通過判斷他們可以簡單的判斷系統是 windows還是*unix
其中相關的函數或者預定義變量如下
復制代碼 代碼如下:
php_uname();
PHP_OS
DIRECTORY_SEPARATOR
PHP_SHLIB_SUFFIX
PATH_SEPARATOR
具體程序:
復制代碼 代碼如下:
<?
if(PATH_SEPARATOR==':') echo 'Linux';
else echo 'Windows';
?>
或者
復制代碼 代碼如下:
<?php
echo php_uname();
echo PHP_OS;
/* Some possible outputs:
Linux localhost 2.4.21-0.13mdk #1 Fri Mar 14 15:08:06 EST 2003 i686
Linux
FreeBSD localhost 3.2-RELEASE #15: Mon Dec 17 08:46:02 GMT 2001
FreeBSD
Windows NT XN1 5.1 build 2600
WINNT
*/
if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') {
echo 'This is a server using Windows!';
} else {
echo 'This is a server not using Windows!';
}
?>