PHP獲取當(dāng)前路徑和目錄的示例

字號:


    代碼如下:
    <?php
    /**
    * PHP獲取路徑或目錄實現(xiàn)
    * @link
    */
    //魔術(shù)變量,獲取當(dāng)前文件的絕對路徑
    echo "__FILE__: ========> ".__FILE__;
    echo '<br/>';
    //魔術(shù)變量,獲取當(dāng)前腳本的目錄
    echo "__DIR__: ========> ".__DIR__;
    echo '<br/>';
    //dirname返回路徑的目錄部分,dirname(__FILE__)相當(dāng)于__DIR__
    echo "dirname(__FILE__): ========> ".dirname(__FILE__);
    echo '<br/>';
    //$_SERVER['PHP_SELF']和$_SERVER['SCRIPT_NAME']的結(jié)果一般相同,他們都是獲取當(dāng)前腳本的文件名
    //只有當(dāng)php以cgi方式運行時有區(qū)別,但是現(xiàn)在幾乎找不到以cgi方式運行php了
    echo '$_SERVER["PHP_SELF"]: ========> '.$_SERVER['PHP_SELF'];
    echo '<br/>';
    echo '$_SERVER["SCRIPT_NAME"]: ========> '.$_SERVER['SCRIPT_NAME'];
    echo '<br/>';
    //當(dāng)前執(zhí)行腳本的絕對路徑。記住,在CLI方式運行php是獲取不到的
    echo '$_SERVER["SCRIPT_FILENAME"]: ========> '.$_SERVER['SCRIPT_FILENAME'];
    echo '<br/>';
    //當(dāng)前運行腳本所在的文檔根目錄。在服務(wù)器配置文件中定義。
    echo '$_SERVER["DOCUMENT_ROOT"]: ========> '.$_SERVER['DOCUMENT_ROOT'];
    echo '<br>';
    //getcwd()返回當(dāng)前工作目錄
    echo "getcwd(): ========> ".getcwd();
    echo '<br>';
    echo '<br>';
    echo "php教程整理";
    (注意: $HTTP_SERVER_VARS 和 $_SERVER 是不同的變量,PHP 處理它們的方式不同。)如果設(shè)置了 register_globals 指令,這些變量也在所有腳本中可用;也就是,分離了 $_SERVER 和 $HTTP_SERVER_VARS 數(shù)組。
    $_SERVER['HTTP_HOST'] 取得當(dāng)前請求的Host:頭部內(nèi)容
    $_SERVER['PHP_SELF']這可能是我們最為經(jīng)常用到的了,它返回當(dāng)前調(diào)用 的頁的文件名,如果是http://localhost/test/2005/test.php, 那么將會返回/test/2005/test.php
    $_SERVER['SCRIPT_NAME']它將返回包含當(dāng)前腳本的路徑。這在頁面需要指向自己時非常有用
    $_SERVER['SCRIPT_FILENAME']它將返回當(dāng)前文件所在的絕對路徑信息
    $_SERVER['REQUEST_URI']返回訪問此頁面所需的URI,包括"/"
    當(dāng)然還有許多路徑函數(shù):
    dirname(),返回路徑信息中的目錄部分,前面是帶有"/"的
    basename()返回路徑中的基本的文件名部分,當(dāng)然也可以設(shè)置后綴來控制輸出。
    realpath(),返回路徑信息的絕對規(guī)范化的路徑