2010-04-30 29 views
5

好吧,只是想知道這個類是內置到PHP的版本。如果它們被構建到所有平臺(OS)中。我想要一種方法來搜索zip文件,並將文件使用file_put_contents放置在webroot中的不同文件路徑中。在任何情況下,我都熟悉如何使用ZipArchive類來做到這一點,但我想知道如果使用這個類將是一個很好的解決方案,並支持MOST,如果不是所有的服務器?我的意思是,我寧願不使用需要服務器安裝的方法。我正在尋找一個解決方案,這將支持至少大多數服務器,而無需安裝類...ZipArchive php類 - 它是內置於PHP?

謝謝:)

另外,我想支持開放的tar.gz和/或.tgz文件如果可能,但我不認爲ZipArchive類支持這一點,但也許是一個不同的內置的PHP類?

+0

「在服務器內的不同區域」 - 如果你的意思是Web根目錄以外,這可能不會在多臺機器上運行在所有... – tadamson 2010-04-30 02:43:30

+0

不,我的意思是根目錄ofcourse ... – SoLoGHoST 2010-04-30 02:45:20

回答

9

焦油支持沒有內置到PHP,但如果你看看PEAR的庫,你應該能夠找到支持創建/解壓壓縮包(其中包括)一些類。看看http://pear.php.net/package/Archive_Tarhttp://pear.php.net/package/File_Archive。最後一個應該是多種歸檔格式(包括ZIP和TAR)的通用接口。

ZIP支持是否內置可能會有所不同,但我想大多數打包商會包括它。再說,你總是可以通過檢查ZipArchive類是否存在通過調用class_exists('ZipArchive');測試,並顯示一個不錯的錯誤信息或回落到一個更通用的方法......

+0

好,感謝我猜,你幫了大忙內,雖然我還在尋找一個通用的方法來滿足所有版本的PHP或者MOST版本的php。 – SoLoGHoST 2010-04-30 12:41:15

+0

那麼,如果你在你的項目中使用PEAR類(你可以在你的項目中包含這些類),那麼你就有了一個可以在大多數PHP版本上運行的通用方法。只需下載並解壓縮tarball並將文件放在你的路徑中的某處... – wimvds 2010-05-04 07:43:36