PHP擷取當前路徑和目錄的樣本

來源:互聯網
上載者:User

 

代碼如下  


<?php
/**
 * PHP擷取路徑或目錄實現
 * @link http://www.45it.com
 */
 
//魔術變數,擷取當前檔案的絕對路徑
echo "__FILE__:  ========>  ".__FILE__; 
echo '<br/>';
 
//魔術變數,擷取當前指令碼的目錄
echo "__DIR__:  ========>  ".__DIR__;
echo '<br/>';
 
//dirname返迴路徑的目錄部分,dirname(__FILE__)相當於__DIR__
echo "dirname(__FILE__):  ========>  ".dirname(__FILE__);
echo '<br/>';
 
//$_SERVER['PHP_SELF']和$_SERVER['SCRIPT_NAME']的結果一般相同,他們都是擷取當前指令碼的檔案名稱
//只有當php以cgi方式運行時有區別,但是現在幾乎找不到以cgi方式運行php了
echo '$_SERVER["PHP_SELF"]:  ========>  '.$_SERVER['PHP_SELF'];
echo '<br/>';
 
echo '$_SERVER["SCRIPT_NAME"]:  ========>  '.$_SERVER['SCRIPT_NAME'];
echo '<br/>';
 
//當前執行指令碼的絕對路徑。記住,在CLI方式運行php是擷取不到的
echo '$_SERVER["SCRIPT_FILENAME"]:  ========>  '.$_SERVER['SCRIPT_FILENAME'];
echo '<br/>';
 
//當前運行指令碼所在的主目錄。在伺服器設定檔中定義。
echo '$_SERVER["DOCUMENT_ROOT"]:  ========>  '.$_SERVER['DOCUMENT_ROOT'];
echo '<br>';
 
//getcwd()返回當前工作目錄
echo "getcwd():  ========>  ".getcwd();
echo '<br>';
 
echo '<br>';
echo "php教程(www.45it.com)整理";

  (注意: $HTTP_SERVER_VARS 和 $_SERVER 是不同的變數,PHP 處理它們的方式不同。)如果設定了 register_globals 指令,這些變數也在所有指令碼中可用;也就是,分離了 $_SERVER 和 $HTTP_SERVER_VARS 數組。

  $_SERVER['HTTP_HOST'] 取得當前請求的Host:頭部內容

  $_SERVER['PHP_SELF']這可能是我們最為經常用到的了,它返回當前調用 的頁的檔案名稱,如果是http://localhost/test/2005/test.php, 那麼將會返回/test/2005/test.php

  $_SERVER['SCRIPT_NAME']它將返回包含當前指令碼的路徑。這在頁面需要指向自己時非常有用

  $_SERVER['SCRIPT_FILENAME']它將返回當前檔案所在的絕對路徑資訊

  $_SERVER['REQUEST_URI']返回訪問此頁面所需的URI,包括"/"

  當然還有許多重路徑函數:

  dirname(),返迴路徑資訊中的目錄部分,前面是帶有"/"的

  basename()返迴路徑中的基本的檔案名稱部分,當然也可以設定尾碼來控制輸出。

  realpath(),返迴路徑資訊的絕對正常化的路徑

相關文章

Cloud Intelligence Leading the Digital Future

Alibaba Cloud ACtivate Online Conference, Nov. 20th & 21st, 2019 (UTC+08)

Register Now >

Starter Package

SSD Cloud server and data transfer for only $2.50 a month

Get Started >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

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

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