__FILE__:被稱為PHP魔術常量,返回當前執行PHP腳本的完整路徑和文件名,包含一個絕對路徑.
1)dirname(__FILE__) 函數返回的是腳本所在在的路徑,更新網絡,比如文件 b.php 包含如下內容:
- <?php
- $basedir = dirname(__FILE__);
- echo $basedir
- //將在頁面打印出一個這個文件所在絕對路徑!
- ?>
我做的測試得到結果: E:websiteothertestcms,這個相當于,asp中的server.mappth的用法,如果b.php被其他目錄里的a.php文件require 或者 include 去引用的話,變量$basedir 的內容還是b.php所在的那個文件夾的路徑,而不是變成a.php文件所在的目錄.
2)dirname(__FILE__) 一般會返回文件所的當前目錄到系統根目錄的一個目錄結構,不會返回當前的文件名稱,dirname(__FILE__) 也可能返回一個 . (當前目錄) [原因是 b.php 文件在 http.conf 或者 PHP 配置開發環境的默認WEB目錄下.
幾個 PHP 的“魔術常量”
名稱 說明
__LINE__ 文件中的當前行號。
__FILE__ 文件的完整路徑和文件名,如果用在包含文件中,則返回包含文件名,自 PHP 4.0.2 起,__FILE__ 總是包含一個絕對路徑,而在此之前的版本有時會包含一個相對路徑.
__FUNCTION__ 函數名稱(PHP 4.3.0 新加),自 PHP 5 起本常量返回該函數被定義時的名字(區分大小寫)。在 PHP 4 中該值總是小寫字母的。
__CLASS__ 類的名稱(PHP 4.3.0 新加),自 PHP 5 起本常量返回該類被定義時的名字(區分大小寫),在 PHP 4 中該值總是小寫字母的。
__METHOD__ 類的方法名(PHP 5.0.0 新加),返回該方法被定義時的名字(區分大小寫)
新聞熱點
疑難解答