|
在網(wǎng)上查了一下。總結(jié)了以下規(guī)律。
dirname(__FILE___) 函數(shù)返回的是腳本所在在的路徑。
比如文件 b.php 包含如下內(nèi)容:
<?php
$basedir = dirname(__FILE__);
?>
如果b.php被其他目錄里的a.php文件require 或者 include 去引用的話。
變量$basedir 的內(nèi)容還是b.php所在的那個(gè)文件夾的路徑。
而不是變成a.php文件所在的目錄。
dirname(__FILE__) 一般會(huì)返回文件所的當(dāng)前目錄到系統(tǒng)根目錄的一個(gè)目錄結(jié)構(gòu)。
不會(huì)返回當(dāng)前的文件名稱。
dirname(__FILE__) 也可能返回一個(gè) . (當(dāng)前目錄)
[原因是 b.php 文件在 http.conf 或者 php 配置開發(fā)環(huán)境的默認(rèn)WEB目錄下.
比如 WEB_ROOT 為: "C:/root/www/".]
b.php文件路徑為: "C:/root/www/b.php".
使用方法提示,
如果重復(fù)一次可以把目錄往上提升一個(gè)層次:
比如:$d = dirname(dirname(__FILE__));
其實(shí)就是把一個(gè)目錄給dirname()做參數(shù)了.因?yàn)閐irname()返回最后的目錄不帶\\或者是/
所以重復(fù)使用的時(shí)候可以認(rèn)為 dirname() 把最下層的目錄當(dāng)成文件名來(lái)處理了.照常返回
當(dāng)前目錄的上級(jí)目錄.這樣重復(fù)就得到了它的上一級(jí)的目錄.
包含得到上一級(jí)目錄的文件
include(dirname(__FILE__).'/../filename.php');
php技術(shù):PHP 的 __FILE__ 常量,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。