PHP dirname(__FILE__)原理及用法解析
dirname(dirname(_FILE_));
假設__FILE__為 /home/web/config/config.php
上面的方法輸出為 /home/web
dirname(dirname(__FILE__));//得到的是文件上一層目錄名dirname(__FILE__);//得到的是文件所在層目錄名
發現網上找了很多文章都是錯誤的,特別驗證后發出來:
dirname(_FILE_)
php中定義了一個很有用的常數,即:_file_
這個內定常數是所在php程序文件的完整路徑(路徑+文件名)。
即使這個文件被其他文件引用(include或require),__file__始終是它所在文件的完整路徑,而不是引用它的那個文件完整路徑。
請看下面例子:
F:Modoer_2.6_SC_UTF8uploadtesta.php
<?php$the_full_name=__FILE__;$the_dir=dirname(__FILE__);echo $the_full_name; //返回:F:Modoer_2.6_SC_UTF8uploadtesta.phpecho $the_dir; //返回:F:Modoer_2.6_SC_UTF8uploadtest?>
**F:Modoer_2.6_SC_UTF8uploadb.php**
<?phpinclude 'test/a.php';//返回:F:Modoer_2.6_SC_UTF8uploadtesta.phpF:Modoer_2.6_SC_UTF8uploadtestecho $the_full_name; //返回:F:Modoer_2.6_SC_UTF8uploadtesta.phpecho $the_dir; //返回:F:Modoer_2.6_SC_UTF8uploadtest?>
簡單地說:
_FILE_ 返回其所在文件的路徑+文件名
dirname(_FILE_) 返回_FILE__所在文件的路徑部分
dirname(dirname(_FILE));得到的是__FILE__所在文件的上一層目錄名(不含最后一個“”號)
例如,當前文件是 F:Modoer_2.6_SC_UTF8uploadtesta.php,則
_FILE_ 得到的就是完整路徑 即 F:Modoer_2.6_SC_UTF8uploadtesta.php ,而
dirname(_FILE_)得到路徑部分 即 F:Modoer_2.6_SC_UTF8uploadtest
dirname(dirname(_FILE_)),即:F:Modoer_2.6_SC_UTF8upload
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。
相關文章:
