2015-10-29 65 views
1

我有一個簡單的問題給你們。使用php exec()

例如,在php我們ZipArchive類創建.zip文件,並使用EXEC我們可以做zip -r dir壓縮整個目錄。

我的問題是,什麼是最佳選擇,最佳性能等等?

總結:exec vs class

+1

取決於。你爲什麼不爲我們設定基準? – kero

+0

真正的問題是:是一個很好的做法,使用exec? –

+0

並非每個程序都可以從shell調用具有等價的php類。 – Steve

回答

2

這最終取決於你願意犧牲什麼。通過使用ZipArchive,您將獲得與您的代碼庫兼容的便攜性,並且可以輕鬆地跳轉環境(而不是嘗試在Windows環境中進行tar操作)。權衡是你贏得了一場表演。我在幾年內確定了這個確切的問題的基準,並發現exec()時,gz要快得多,但顯然時間已經過去,現在可能會有所不同(我懷疑它)。 ZipArchive可能遇到的另一個問題是php內存限制(大檔案會導致嚴重問題)。

基於你提出這個問題的事實,那麼我的建議是留在ZipArchive中,exec()有嚴重的安全問題,ZipArchive會爲你解決這個問題。有了正確的錯誤處理,你應該沒問題。

+0

謝謝你,爲答案。 –