__DIR__和dirname(__ FILE__)在PHP中有什么区别吗?
它对我来说看起来一样,但我不确定,
因为有很多项目使用dirname(__FILE__) 。 
他们的结果是完全一样的 ; 所以,没有什么区别。
例如,以下两行:
 var_dump(dirname(__FILE__)); var_dump(__DIR__); 
两者会给出相同的输出:
 string '/home/squale/developpement/tests/temp' (length=37) 
但是,至less有两点区别:
-   __DIR__仅在PHP> = 5.3时存在-  这就是dirname(__FILE__)被广泛使用的原因
 
-  这就是
-   __DIR__是在编译时计算的,而dirname(__FILE__)是指函数调用,在执行时被评估-  所以, __DIR__是(或者应该)更快。
 
-  所以, 
作为参考,请参阅手册的魔术常数部分(引用) :
__DIR__:文件的目录。
如果在include中使用,则返回包含文件的目录。
这相当于dirname(__FILE__)。
除非目录名是根目录,否则该目录名没有结尾的斜杠。
(在PHP 5.3.0中添加)