2016-06-12 20 views
0

我想知道什麼PHP函數/關鍵字我可以使用,以便我總是可以到我的webfolder的根。我使用xampp使用Apache服務器。PHP獲取webfolder地址

我有名字 'test1的' 網絡文件夾,所以它在以下路徑: d:\ XAMPP \ htdocs中\ test1的

我目前使用$ _SERVRER [ 'DOCUMENT_ROOT']來獲得以上信息。我擔心,如果我繼續上傳到一個實際的網絡服務器該網站可能無法正常工作。

有沒有辦法在那裏,這樣,當我創建鏈接,我不需要擔心的document_root

回答

0

所以,你真的想要得到的基本URL指向D:\xampp\htdocs\test1或者你はD:\xampp\htdocs\下任何子目錄恩娜稱它。

現在,我假設在test1目錄中有一個index.php文件。如果是這樣,請定義一個變量$base_url = dirname($_SERVER['PHP_SELF']);,它會將完整的URL返回到您的index.php文件。您可能還需要一個結尾斜槓追加到$base_url

//注意

也許我誤解了你的要求,我給你一種方式來獲得基礎URL任何子下指向您的index.php文件目錄在D:\xampp\htdocs\。現在,談到基本目錄,這是不同的,我會去周圍的東西,如:

$base_dir = dirname(__FILE__); 

這個變量將被定義爲index.php本身。同樣,如果你想添加一個反斜槓/尾部斜線(取決於服務器環境)。附加像這樣:

$base_dir .= DIRECTORY_SEPARATOR; 
+0

感謝您的建議。是test1是包含index.php和其他文件夾的導演。我會檢查。 – dk007

+0

當我從index.php調用圖像時,我的webfolder test1包含文件index.php和兩個文件夾'Images'和'Pages',然後我使用了圖像/ 1.png,但是當我必須從一個圖像調用同一圖像時頁面'頁面'然後我需要使用/images/1.png我的挑戰是我可以消除這個'/'。因爲當我從索引調用/images/1.png。php,它並沒有工作 – dk007

+0

當你使用以'/'開頭的相對URL,比如'/ images/1.png'時,webbrowsers會將資源解釋爲位於'http://domain.com/images/1 .png「而不是在'http:// domain.com/test1/images/1.png',除非DOCUMENT_ROOT真的指向'D:\ xampp \ htdocs \ test1' diretory。 –

0

$ _SERVRER我只能得到test1的[「DOCUMENT_ROOT」]定義了文檔根目錄下,電流正如服務器的配置文件中所定義的那樣,腳本正在執行。正如你所看到的,你可以在任何支持apache的服務器上使用它。您可以通過在免費託管網站(例如000webhost.com)上上傳您的網站來嘗試。我希望我的回答是suffecient.thank你

0

總是一個絕對路徑,以幫助您防止這些類型的問題,並提出一個如果else語句

當你在你的本地主機使用這個喜歡,當你上傳您的在線Web服務器上的文件,然後使用這個

例如

$hostname = $_SERVER['HTTP_HOST']; 
if($hostname == 'localhost') 
{ 
    $csabosultepath = '/final'; 
    $absolutepath="http://".$_SERVER['SERVER_NAME'].$csabosultepath.'/'; 
} 
else { 
    $absolutepath="https://".$_SERVER['SERVER_NAME'].'/'; 
} 
+0

感謝您的建議。我有兩個疑問:1)這不會給我的頁面增加很多處理時間2)我瞭解locatlhost,你在這裏用dell或engr02引用了什麼 – dk007

+0

我的榮幸:) 1 - nop 2 - 實際上這些我的本地機器名稱;)我從代碼中刪除該代碼現在檢查 –