PHP怎麼實現檔案壓縮與解壓?

2021-10-07 07:56:12 字數 1784 閱讀 3325

我們在處理業務邏輯時不免要壓縮解壓縮檔案,那php怎麼操作壓縮檔案呢?具體有以下五種方式

使用php ziparchive 類處理.zip檔案

壓縮單個檔案:

<?php

$errorhtmlurl =

'error.html'

; $html =

'測試壓縮包';

file_put_contents($errorhtmlurl, $html);

$zipfilename =

"error.zip"

; $zip

= new ziparchive();

if($zip

->

open

($zipfilename, ziparchive:

:create)

=== true)

else

壓縮多個檔案:

// 其實就是addfile執行多次,可以通過陣列的遍歷來實現。

$filenames = array(

'test.php'

,'test2.php'

,'test3.php');

$zipfilename =

'test.zip'

; $zip

= new ziparchive();

if($zip

->

open

($zipfilename, ziparchive:

:create)

=== true)

$zip

->close();

}else

解壓檔案:

$zip

= new ziparchive;

if($zip

->

open

('test.zip')==

= true)

else

壓縮乙個目錄:

$zip

= new ziparchive();

if($zip

->

open

('test.zip'

, ziparchive:

:create)

=== true)

function addfiletozip($path, $zip

)else}}

@closedir($path)

;// 關閉目錄指定指定資料夾

}#注意:

// $zip

->

open方法第二個引數可以有這四個引數

// ziparchive:

:create(integer) 如果不存在則建立乙個zip壓縮包。

// ziparchive:

:overwrite(integer) 總是以乙個新的壓縮包開始,此模式下如果已經存在則會被覆蓋。

// ziparchive:

:excl(integer) 如果壓縮包已經存在,則出錯。

// ziparchive:

:checkcons(integer) 對壓縮包執行額外的一致性檢查,如果失敗則顯示錯誤。

使用zlib 函式 處理.gz檔案(未完待續)

使用rararchive 類處理.rar檔案(未完待續)

使用bzip2 函式 處理.bz2檔案(未完待續)

使用phar 類處理.phar檔案(未完待續)

php 解壓檔案與壓縮檔案

配置環境變數 然後cmd 輸入 php m 檢視是否有zip 選項 沒有的話zip功能將無法使用 function zip file string filename zip new ziparchive zipname basename filename zip 開啟指定壓縮包,不存在則建立,存在則...

php壓縮解壓檔案

php上傳rar壓縮包並解壓到目錄 1.php上傳並解壓的原理 普通上傳功能 上傳伺服器 rarzip 載入系統元件 執行解壓命令 成功解壓到目錄 7z 2.php執行系統命令的幾類函式的區別 system 輸出並返回最後一行shell結果 exec 不輸出結果,返回最後一行shell結果 pass...

python實現檔案壓縮與解壓

最近剛剛開始學習python,現在分享乙個小 實現檔案的壓縮與解壓。希望能給那些和我一樣,剛剛學習python的小夥伴們一些小小幫助。方法一 通過zipfile模組實現檔案的壓縮與解壓 coding utf8 import zipfile import time import os 使用zipfil...