咕狗了一下,發現有一個套件還滿好用的
PclZip (目前版本至 2.8,2,持續更新中..)
還是來做個筆記記錄一下吧!
使用方法 :
1.include 至檔案中,如: include_once( 'pclzip.lib.php');
2.解壓縮目錄記得將寫入權限開啟,如: temp目錄設定為 777
基本用法 :
//view plaincopy to clipboardprint?
require_once('pclzip.lib.php');
$archive = new PclZip('archive.zip');
$archive->extract();
這樣就完成最基本的解壓縮功能,還有其他參數可以設定,見下表
參數 | 引數 |
---|---|
說明 | |
PCLZIP_OPT_PATH | 字串 |
要解壓縮到哪的路徑。可用於extract()、extractByIndex()。 | |
PCLZIP_OPT_ADD_PATH | 字串 |
增加一個目錄。可用於create()、add()、extract()。(使用於create()時,是把要壓縮的檔案放進這個目錄中再壓縮,使用於extract()時,是在要解壓縮的路徑中增加此目錄,並解壓縮到此目錄中)。 | |
PCLZIP_OPT_REMOVE_PATH | 字串 |
移除部份的目錄路徑,例如原本檔案所在的目錄為aa/bb/cc/test.test.txt,但是希望壓縮或解壓縮後的路徑為cc/test.txt, 就可以使用PCLZIP_OPT_REMOVE_PATH,"aa/bb"。可用於create()、add()、extract()、 extractByIndex()。(與PCLZIP_OPT_REMOVE_ALL_PATH一起用的時候會被自動忽略) | |
PCLZIP_OPT_REMOVE_ALL_PATH | -- |
移除所有檔案的目錄,所有檔案都會被解壓縮或壓縮到當前或是指定的目錄中,請注意如果有不同目錄的相同名稱檔案,使用此參數時會被覆蓋,此參數不需要引數。可用於create()、add()、extract()、extractByIndex()。 | |
PCLZIP_OPT_SET_CHMOD | CHMOD值 |
設定解壓縮出來的檔案的CHMOD值。可用於extract()、extractByIndex()。 | |
PCLZIP_OPT_BY_NAME | 檔案名稱 |
僅解壓縮引數中所指定的檔案,檔案名稱可以用陣列或是逗號隔開表示。 | |
PCLZIP_OPT_BY_EREG | RegEx字串 |
僅解壓縮引數中正規表達式比對檔名正確的檔案,使用php中的ereg()函式比對。 | |
PCLZIP_OPT_BY_PREG | RegEx字串 |
僅解壓縮引數中正規表達式比對檔名正確的檔案,使用php中的preg_match()函式比對。 | |
PCLZIP_OPT_BY_INDEX | 陣列 |
僅解壓縮引數陣列中各元素所指定順序的檔案。(這個我還不太懂是照什麼順序,似乎不是照字母排) | |
PCLZIP_OPT_EXTRACT_AS_STRING | -- |
將一個檔案的內容解壓縮成一個字串,通常可能用於只需要看readme檔案的情況。請注意如果一次解壓縮太多檔案,有可能會將記憶體耗盡。 | |
PCLZIP_OPT_EXTRACT_IN_OUTPUT | -- |
將一個檔案的內容解壓縮並直接輸出(即類似直接echo此結果)。 | |
PCLZIP_OPT_NO_COMPRESSION | -- |
將一個檔案加入此壓縮檔內,此檔案不會被壓縮,僅是放入同一個壓縮檔中。 | |
PCLZIP_OPT_COMMENT | 字串 |
建立壓縮檔時增加一個註解,如果原本已經有註解的話,將會直接覆蓋過去。 | |
PCLZIP_OPT_ADD_COMMENT | 字串 |
建立壓縮檔時增加一個註解,如果原本已經有註解的話,將會接在後面。 | |
PCLZIP_OPT_PREPEND_COMMENT | 字串 |
建立壓縮檔時增加一個註解,如果原本已經有註解的話,將會把原先的註解接在此字串的後面。 |
資料參考來源:
http://itisjoe.pixnet.net/blog/post/14758894
http://support.oss.org.tw/?q=node/147
沒有留言:
張貼留言