了解 PHP 相對包含路徑
在 PHP 中,處理多個巢狀包含時,相對包含路徑可能會令人困惑。要確定包含檔案的正確路徑,必須了解管理它們的範圍規則。
執行 PHP 腳本時,目前工作目錄將成為腳本所在的目錄。這用作解析 include 語句中指定的相對路徑的基本路徑。但是,在考慮嵌套包含時需要做出區分。
相對於主腳本
當檔案A.PHP 包含檔案B.PHP 時,檔案B.PHP 又包含檔案C.PHP,C.PHP 的相對路徑是根據A.PHP 的位置確定的,而不是B.PHP 的位置。這是因為 include() 只是將指定檔案的內容插入到目前執行的腳本中。
範例:
// A.php is located at /var/www/html/ <?php include 'B.php'; ?> // B.php is located at /var/www/html/includes/ <?php include 'C.php'; ?> // C.php is located at /var/www/html/utils/
在這個情況下,相對路徑C.PHP 是/var/www/html/utils/C.php,而不是/var/www/html/includes/utils/C.php.
使用FILE 作為相對路徑
如果您想要指定一個基於進行包含的檔案位置的相對路徑,您可以使用 __FILE__ 常數。無論目前工作目錄為何,此常數始終指向目前程式碼行所在的實際檔案。
// Using __FILE__ in B.php <?php include(dirname(__FILE__)."/C.PHP"); ?>
在這種情況下,C.PHP 的相對路徑將來自包含 B 的目錄.PHP.
請記住,PHP 的包含路徑始終相對於主腳本。透過利用 __FILE__ 或了解包含路徑的層次性質,您可以自信地處理複雜 PHP 應用程式中的相關包含語句。
以上是相對包含路徑如何在嵌套 PHP 包含中運作?的詳細內容。更多資訊請關注PHP中文網其他相關文章!