只是爲了確認,使用:文檔根目錄PHP
$_SERVER["DOCUMENT_ROOT"]
與使用:/
在HTML。
例如,如果當前文檔是:
folder/folder/folder/index.php
我可以使用(在HTML)開始在roort:
/somedoc.html
,並做同樣的PHP我會使用:
$_SERVER["DOCUMENT_ROOT"] . "/somedoc.html";
這是正確的嗎?有沒有更簡單的方法來做到這一點?
只是爲了確認,使用:文檔根目錄PHP
$_SERVER["DOCUMENT_ROOT"]
與使用:/
在HTML。
例如,如果當前文檔是:
folder/folder/folder/index.php
我可以使用(在HTML)開始在roort:
/somedoc.html
,並做同樣的PHP我會使用:
$_SERVER["DOCUMENT_ROOT"] . "/somedoc.html";
這是正確的嗎?有沒有更簡單的方法來做到這一點?
<a href="<?php echo $_SERVER['DOCUMENT_ROOT'].'hello.html'; ?>">go with php</a>
<br />
<a href="/hello.html">go to with html</a>
自己試試看,發現它們不完全一樣。
$ _ SERVER [ 'DOCUMENT_ROOT']呈現一個實際的文件路徑(在我的計算機上運行,因爲它是自己的服務器,C:/ WAMP/WWW/
HTML的/渲染服務器URL的根,在我的情況爲localhost/
但是C:/wamp/www/hello.html和本地主機/ hello.html的其實都是同一個文件
只是/
是指你的網站從公衆的HTML文件夾的根目錄DOCUMENT_ROOT
指包含您的網站的服務器上的文件夾的本地路徑。
例如,我有一臺機器上的EasyPHP設置...
$_SERVER["DOCUMENT_ROOT"]
給我file:///C:/Program%20Files%20(x86)/EasyPHP-5.3.9/www
但我鏈接到只有/
任何文件將是相對於我的www
文件夾。
如果你想給你的服務器上的文件的絕對路徑(從服務器的根),你可以使用DOCUMENT_ROOT
。如果你想從網站的根目錄給出文件的絕對路徑,只需使用/
。
最簡單的方法就是擁有良好的網站結構並將其作爲常量編寫。
DEFINE("BACK_ROOT","/var/www/");
如果你想使用它說include(),它的問題不同於上面的超鏈接。 – 2012-08-13 04:02:08
沒有理由發佈我的答案,因爲這是我正要說的。 – 2012-08-13 04:02:27
包含有什麼不同? – Andrew 2012-08-13 04:02:53