我試圖在我的PHP網站中使用絕對URL,以確保頁面和圖像的路徑始終準確無誤,無論您處於文件層次結構中的哪個位置。如何在本地主機中處理絕對URL
我很難找到最好的,最可維護的方式來處理。
這裏是我目前所面對的一個例子:
require_once 'http://localhost/Website/includes/init.php';
「網站」,在這種情況下,我是爲這個項目創建的目錄的名稱。這種方法的主要問題是,如果我更改目錄名稱,我將不得不搜索&替換所有頁面中的上千次出現。
在計算器上搜索後,我發現了什麼似乎是一個更好的方式來處理這個問題:
define("LOCAL", "http://localhost/Website/");
define("WEB", "http://foo.bar");
$environment = LOCAL; //change to WEB if you're live
每當我想創建一個鏈接,我用這個synthax:
require_once($environment . 'includes/init.php');
這工作得很好,但我想知道是否真的是這樣做的正確方法。
如果是這樣,我很努力地處理一個細節:如何在我的所有頁面中包含定義常量和變量的這部分代碼?我不能使用包含,因爲包含在網站中的任何地方都可以使用它,如果這樣做合理,它需要它正在嘗試調用的文件中的常量和變量。