__FILE__、dirname(__FILE__)、dirname(dirname(__FILE__))的区别

  • php中定义了一个很有用的常数,即:

__file__

这个内定常数是当前php程序的就是完整路径(路径+文件名)。
即使这个文件被其他文件引用(include或require),__file__始终是它所在文件的完整路径,而不是引用它的那个文件完整路径。

请看下面例子:

+ /home/data/demo/test/a.php

+ home/data/demo/b.php

  • 简单地说:

    FILE 返回当前 路径+文件名
    dirname(FILE) 返回当前文件路径的 路径部分
    dirname(dirname(FILE));得到的是文件上一层目录名(不含最后一个“/”号)

例如,当前文件是 /home/data/demo/test.php ,则

FILE 得到的就是完整路径 即 /home/data/demo/test.php ,而
dirname(FILE)得到路径部分 即 /home/data/demo (后面没有“/”号)
dirname(dirname(FILE))得到文件上一层目录名 即 /home/data(后面没有“/”号)

posted @ 2016-06-24 17:22  tristana  阅读(107)  评论(0)    收藏  举报