dirname(__FILE__)使用案例詳解

來源:互聯網
上載者:User
這次給大家帶來dirname(FILE)使用案例詳解,dirname(FILE)使用的注意事項有哪些,下面就是實戰案例,一起來看一下。

FILE表示當前所在檔案的絕對路徑包括檔案名稱,dirname(FILE)表示當前檔案的絕對路徑,basename(FILE)表示當前檔案的檔案名稱,dirname(FILE)."/f/".basename(FILE)則表示當前檔案所在目錄下的f目錄下的,檔案名稱為dirname(FILE)的檔案,require表示包含該檔案到這個檔案。

下面是詳解:

1)dirname(FILE_) 函數返回的是指令碼所在在的路徑。

比如檔案 b.php 包含如下內容:

<?php$basedir = dirname(FILE);?>

如果b.php被其他目錄裡的a.php檔案require 或者 include 去引用的話。
變數$basedir 的內容還是b.php所在的那個檔案夾的路徑。
而不是變成a.php檔案所在的目錄。

2)dirname(FILE) 一般會返迴文件所的目前的目錄到系統根目錄的一個目錄結構。

不會返回當前的檔案名稱。
dirname(FILE) 也可能返回一個 . (目前的目錄)
[原因是 b.php 檔案在 http.conf 或者 PHP 配置開發環境的預設WEB目錄下.
比如 WEB_ROOT 為: "C:/root/www/".]
b.php檔案路徑為: "C:/root/www/b.php".

3)使用方法提示,

如果重複一次可以把目錄往上提升一個層次:

比如:

$d = dirname(dirname(FILE));

其實就是把一個目錄給dirname()做參數了.因為dirname()返回最後的目錄不帶\\或者是/
所以重複使用的時候可以認為 dirname() 把最下層的目錄當成檔案名稱來處理了.照常返回
目前的目錄的上級目錄.這樣重複就得到了它的上一級的目錄.

4)包含得到上一級目錄的檔案

include(dirname(FILE).''/../filename

php的dirname(FILE)和dirname(dirname(FILE))區別

dirname(dirname(FILE));
假設FILE為 /home/web/config/config.php
上面的方法輸出為 /home/web

dirname(dirname(FILE));得到的是檔案上一層目錄名

dirname(FILE);得到的是檔案所在層目錄名

指令碼之家小編註:其實就是用到了PHP的dirname() 函數與FILE

定義和用法
dirname() 函數返迴路徑中的目錄部分。

文法

dirname(path)

參數 描述
path 必需。規定要檢查的路徑。

說明
path 參數是一個包含有指向一個檔案的全路徑的字串。該函數返回去掉檔案名稱後的目錄名。

例子

<?phpecho dirname("c:/testweb/home.php");echo dirname("/testweb/home.php");?>

輸出:

c:/testweb
/testweb

相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!

推薦閱讀:

Laravel ORM對Model::find緩衝方法詳解

thinkPHP控制器變數在模板內顯示步驟詳解

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.