當我嘗試使用require
或require_once
時,如果所需的文件位於相同的子目錄中,但當它在其子目錄之外看到文件時,它將正常工作,它會產生致命錯誤。這是基本的文件樹的樣子:如何在其他目錄分支中需要文件?
* main.php
+ login/
* login.php
+ includes/
* session.php
...所以基本上,如果我有main.php需要登錄/ login.php中,它的罰款,但如果我嘗試做目錄遍歷login.php中要求包括/ session.php文件,它失敗,從而導致錯誤:
PHP Fatal error: require_once(): Failed opening required [...]
這一概念的代碼將是:
require('login/login.php') #works fine (main.php)
require('../includes/session.php') #quits (login.php)
我已經使用$_SERVER('DOCUMENT_ROOT')
試過,$_SERVER('SERVER_ADDR')
,dir(_FILE_)
和chdir(../)
。我記得幾個月前我在解決這個問題時正在開發一個項目,這是一個遍歷文件路徑的簡單函數,但是我再也找不到它了。有任何想法嗎?
「\'」用於內聯代碼。對於[代碼塊](http://meta.stackexchange.com/questions/22186/how-do-i-format-my-code-blocks),每行縮進一個額外的四個空格。編輯器工具欄中的「{}」按鈕可以爲您做到這一點。 「\ *」,「 - 」或「+」可用於列表。檢查我的編輯,看看如何。單擊編輯器工具欄中的橙色問號以獲取更多信息和格式化提示。 – outis 2011-09-26 23:31:18
當您引用'$ _SERVER'變量時,是否使用函數表示法(括號)而不是數組索引(方括號)?如果是這樣,那可能是你無法讓他們工作的原因。 – outis 2011-09-26 23:35:50