我正在編寫一個PHP函數,它將刪除傳遞給它的目錄中的所有文件(並且最終可能將其擴展爲遞歸刪除)。爲了安全起見,我想確保通過一個錯誤或某些東西,如果傳入的目錄是根目錄,我不會嘗試刪除任何東西。識別PHP中的根目錄
文件權限應該保護我,在很大程度上,但爲了以防萬一,特別是如果我把它擴展到遞歸刪除我只是想採取額外的步驟。
作爲複雜的因素,此代碼可以在Windows機器或Linux機器上運行,所以根目錄可能看起來像「C:\」或「/」。我認爲還有其他的方法可以真正的引用根目錄,可能是'c:\ temp ..'
那麼,在PHP中是否有一種可靠的方法來識別dir spec解析爲文件根目錄系統?
精...
我寫PHPUnit測試的Web應用程序,我想創造一個應用程序的狀態備份的測試運行,並恢復之前之後的框架。該應用程序允許用戶上傳文件。根據文件是什麼,它被複制到幾個可能的目錄中的一個。
保存和恢復應用程序的目錄需要地方複製的狀態,測試運行,那麼目錄需要有自己的文件刪除,並從備份retreived。
這些目錄的位置因機器而異,我知道有些人把它們放在網絡應用程序之外。有一個配置文件可以被測試讀取,它給出了給定機器的這些目錄的位置。
如果我沒有將所有這些目錄限制在特定的目錄樹中,那麼很難做到監獄。如果我將這些目錄限制在特定的目錄樹中,那麼有些人將不得不重新配置他們的機器。
我想到了這個,我喜歡這個詞,「監獄」。我認爲在一些Windows系統中,我需要考慮用戶賬戶中的目錄,c:\ users \ ...以及web應用程序中的目錄c:\ wamp \ www \ ...,因此監獄將是困難的。可能值得重新配置系統,以便所有受影響的目錄位於c:\ wamp \ ... 另一件事是,雖然我同意還有其他目錄,我不想意外刪除所有文件,root是唯一的我認爲這可能會產生一個錯誤。 – 2010-01-25 21:17:55
你願意詳細說明你想要完成什麼嗎?我或其他人可能會給你一個更有幫助的答案。 – 2010-01-26 07:31:19
以上詳細說明 – 2010-01-26 21:05:48