Pas*_*TIN 181
他们的结果完全一样 ; 所以,没有区别.
例如,以下两行:
var_dump(dirname(__FILE__));
var_dump(__DIR__);
Run Code Online (Sandbox Code Playgroud)
两者都会给出相同的输出:
string '/home/squale/developpement/tests/temp' (length=37)
Run Code Online (Sandbox Code Playgroud)
但是,至少存在两个不同之处:
__DIR__仅存在PHP> = 5.3
dirname(__FILE__)更广泛使用的原因__DIR__在编译时进行评估,同时dirname(__FILE__)表示函数调用,并在执行时进行评估
__DIR__是(或应该)更快.
作为参考,请参阅手册的Magic constants部分(引用):
__DIR__:文件的目录.
如果在include中使用,则返回包含文件的目录.
这相当于dirname(__FILE__).
除非它是根目录,否则此目录名称没有尾部斜杠.
(在PHP 5.3.0中添加.)
| 归档时间: |
|
| 查看次数: |
55008 次 |
| 最近记录: |