php 相對路徑:PHP的相對路徑問題

來源:互聯網
上載者:User

在PHP中require,include一個檔案時,大都是用相對路徑,是個很頭疼的問題。
例如:
<web>(網站根目錄)
├<A>檔案夾
│ │
│ └1.php
├<B>檔案夾
│ │
│ └2.php
└index.php
問題:在1.php中通過include(“../B/2.php”)來引入B目錄下的2.php檔案;
在index.php中通過include(“A/1.php”)來引入A目錄下的1.php檔案;
運行出來當然會出現問題,找不到../B/2.php檔案。
記住一個原則,所有的包含語句最後都轉換為以包含檔案路徑為基準的包含路徑建議使用一個基本路徑來作為所有的路徑參考,例如 __FILE__或者 $_SERVER['DOCUMENT_ROOT']
__FILE__:(適合各種情況)
在config檔案裡配置網站根目錄
define( "WEB_ROOT ", dirname(__FILE__) );
config檔案放到網站的根目錄裡,
其它檔案包含設定檔,
包含其它檔案時根據WEB_ROOT來定位即可。
require_once( WEB_ROOT . "/a.php " );
$_SERVER['DOCUMENT_ROOT'],適合非虛擬機器主機(Alias)情況
 

  1. <?php 
  2. if (!defined("WETSITE_BASE_DIR")) 
  3. define("WETSITE_BASE_DIR", $_SERVER['DOCUMENT_ROOT'].'/Clare/'); 
  4. require_once(WETSITE_BASE_DIR.'includes/global.inc.php'); 
  5. ?>  
本文連結http://www.cxybl.com/html/wlbc/Php/20130319/37249.html

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.