我一直在閱讀整個早上和測試,但我仍然試圖圍繞這一點,因爲移動webroot以外的項目。毋庸置疑,事情仍然存在。PHP目錄結構和訪問
一切位於VAR/
我的情景/問題:兩者的index.php文件需要slide.php(位於VAR /庫/ INC)以來,該指數的一個網頁是另一個層次了。我一直在使用以下內容:
var/www/html/index.php - require_once('../../ libs/inc/slide.php');
var/www/html/acc/index.php - require_once('../../../ libs/inc/slide.php');
但是,slide.php也會利用connection.php,它是slide.php的兩個級別,然後返回到另一個名爲「connect」的目錄。我一直在使用下面的工作爲上述index.php文件之一。
var/libs/inc/slide.php - require_once('../../ connect/connection.php');
VAR /連接/ connection.php
的問題是html目錄中的「ACC」子目錄及其頁面可以訪問slide.php鑑於上述,但不能得到connection.php
我該如何做到這一點? 當前結構:
var/www/html/index.php - require_once('../../ libs/inc/slide.php');
var/www/html/acc/index.php - require_once('../../../ libs/inc/slide.php');
var/libs/inc/slide.php - require_once('../../ connect/connection.php');
var/connect/connection.php
通常你要麼只使用完整路徑'的/ var/libs'每個包括包括文件,這樣的路徑並不重要,或者你想補充'使用的/ var/libs'到include路徑[通過set_include_path] (http://www.php.net/set_include_path),它可以讓你指定'inc/slide.php' ...等。 – 2014-10-09 17:08:43
另一個常見的做法是在配置文件的某個地方創建一個常量,這個文件隨處可見地包含lib'define('LIB_PATH','/ var/libs /')路徑,然後包括使用include(LIB_PATH)。 'INC/slide.php')'。這很好,因爲如果路徑改變了,你只需要改變常量。 – 2014-10-09 17:15:38
謝謝喬納森。我會嘗試你的第二個建議。這聽起來更令人愉快。我會讓你知道它是怎麼回事。 – 2014-10-09 17:18:35