1
dirname
取得路徑中的目錄名。
文法: string dirname(string path);
傳回值: 字串
函數種類: 檔案存取
內容說明
本函數返回 path 中的目錄名稱。在 Win32 系統中,用斜線 (/) 或者反斜線 (\) 都可以;但是其它的作業系統的路徑都是 (/)。
使用範例
本例返回字串 $file 為 "/etc"。
<?
$path = "/etc/hostname";
$file = dirname($path);
?>
dirname(__FILE___) 函數返回的是指令碼所在在的路徑。
比如檔案 b.php 包含如下內容:
<?php
$basedir = dirname(__FILE__);
?>
如果b.php被其他目錄裡的a.php檔案require 或者 include 去引用的話。
變數$basedir 的內容還是b.php所在的那個檔案夾的路徑。
而不是變成a.php檔案所在的目錄。
dirname(__FILE__) 一般會返迴文件所的目前的目錄到系統根目錄的一個目錄結構。
不會返回當前的檔案名稱。
dirname(__FILE__) 也可能返回一個 . (目前的目錄)
[原因是 b.php 檔案在 http.conf 或者 PHP 配置開發環境的預設WEB目錄下.
比如 WEB_ROOT 為: "C:/root/www/".]
b.php檔案路徑為: "C:/root/www/b.php".
使用方法提示,
如果重複一次可以把目錄往上提升一個層次:
比如:$d = dirname(dirname(__FILE__));
其實就是把一個目錄給dirname()做參數了.因為dirname()返回最後的目錄不帶\\或者是/
所以重複使用的時候可以認為 dirname() 把最下層的目錄當成檔案名稱來處理了.照常返回
目前的目錄的上級目錄.這樣重複就得到了它的上一級的目錄.
包含得到上一級目錄的檔案
include(dirname(__FILE__).'/../filename.php');
本文來自: 指令碼之家(www.jb51.net) 詳細出處參考:http://www.jb51.net/article/6263.htm