2009-11-07 72 views
1

這裏是的這段有人可以解釋一下這個PHP代碼是做還是其目的

$thisFile = str_replace('\\', '/', __FILE__); 
$docRoot = $_SERVER['DOCUMENT_ROOT']; 

$webRoot = str_replace(array($docRoot, 'library/config.php'), '', $thisFile); 
$srvRoot = str_replace('library/config.php', '', $thisFile); 

,如果我保存到test.php的這是一個文件。我感到困惑的部分是str_replace是如何使$ webRoot值出來test.php

回答

1

變量__FILE__是當前源文件或「test.php」的名稱。

+1

解決了神祕......嘆......人,如果你要發佈答案,至少讓它聽起來像一個... – Seb 2009-11-07 18:35:40

2

該代碼將計算絕對文件系統路徑($srvRoot)和絕對URL路徑($webRoot)到應用程序目錄,我想可以從當前文件的相對位置library/config.php

__FILE__是一個神奇常數,它包含文件常量的絕對文件系統路徑。$thisFile將包含反斜槓替換爲正斜槓的文件系統路徑。 $docRoot是可從Web訪問的根目錄的絕對文件系統路徑。

因此,舉例來說,如果__FILE__/var/www/htdocs/apps/foobar/library/config.php$_SERVER['DOCUMENT_ROOT']/var/www/htdocs$webRoot/apps/foobar/$srvRoot/var/www/htdocs/apps/foobar/

相關問題