簡體   English   中英

定義config.php的PHP路徑

[英]Defining PHP Path to config.php

我有一個在XAMPP下運行的現有PHP Web項目,並且在部署之前對其進行了整理,以使其更安全,更易於維護。 這些步驟之一是將一些關鍵變量移動到類似於PHP網站模板的config.php文件中

我將config.php文件放置在資源文件夾中,如下所示

在此處輸入圖片說明

我現在嘗試包括以下配置文件

include 'resources/config.php';
echo ("Template path is ".TEMPLATES_PATH );

結果是找不到TEMPLATES_PATH定義。 如果現在將config.php文件移動到根目錄(htdocs),則該目錄與index.php文件處於同一級別,並將include更改為

include 'config.php';
echo ("Template path is ".TEMPLATES_PATH );

TEMPLATES_PATH已定義,站點可以正常工作。

我幾乎嘗試了絕對路徑的幾乎所有變體,但均無濟於事,因此,這可能表明對我尚未掌握的PHP路徑結構的一個或另一個方面缺乏根本的了解,因此,對此的任何見解將不勝感激。

嘗試

include __DIR__ . '/resources/config.php';

順便說一句,使用作曲家是更好的選擇!

"autoload": {
    "files": ["/resources/config.php"]
}

好吧,這是謎底的答案。 但是首先感謝所有嘗試提供幫助的人。

如果我已經發布了config.php文件的內容,則定義`

define("TEMPLATES_PATH", realpath(dirname(__FILE__) . 'resources/templates'));`

會被認為是不正確的。 config.php文件的文件路徑是相對於該文件的,而不是目錄結構。 因此,通過將文件移動到根目錄,可以使用上述定義,但是在資源文件夾中時,資源目錄已被過度指定。 因此,解決方案是確保config.php文件中的規范與該文件在項目中的位置有關; 因此將以上內容更改為:

 define("TEMPLATES_PATH", realpath(dirname(__FILE__) . '/templates'));

解決問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM