[英]Is there any difference between __DIR__ and dirname(__FILE__) in PHP?
對我來說看起來一樣,但我不確定,
因為有很多項目使用dirname(__FILE__)
。
他們的結果完全一樣 ; 所以,沒有區別。
例如,以下兩行:
var_dump(dirname(__FILE__));
var_dump(__DIR__);
兩者都會給出相同的輸出:
string '/home/squale/developpement/tests/temp' (length=37)
但是,至少存在兩個不同之處:
__DIR__
僅在PHP> = 5.3時存在
dirname(__FILE__)
被廣泛使用的原因 __DIR__
在編譯時計算,而dirname(__FILE__)
表示函數調用,在執行時計算
__DIR__
是(或應該)更快。
作為參考,請參閱手冊的Magic constants部分(引用) :
__DIR__
:文件的目錄。
如果在include中使用,則返回包含文件的目錄。
這相當於dirname(__FILE__)
。
除非它是根目錄,否則此目錄名稱沒有尾部斜杠。
(在PHP 5.3.0中添加。)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.