$filename = "./" . date ( 'ymdh' ) . ".zip"; // 最終生成的檔名(含路徑)
// 生成檔案
$zip = new ziparchive (); // 使用本類,linux需開啟zlib,windows需取消php_zip.dll前的注釋
if ($zip->open ($filename ,\ziparchive::overwrite) !== true)
}$filename = "/www/attach/1..jpg"; //存放檔案的真實路徑
if(file_exists($filename ))
$zip->close (); // 關閉
header ( "cache-control: max-age=0" );
header ( "content-description: file transfer" );
header ( 'content-disposition: attachment; filename=' . basename ( $filename ) ); // 檔名
header ( "content-transfer-encoding: binary" ); // 告訴瀏覽器,這是二進位制檔案
header ( 'content-length: ' . filesize ( $filename ) ); // 告訴瀏覽器,檔案大小
@readfile ( $filename );//輸出檔案;
a) 我們只需要new乙個ziparchive物件,然後使用open方法建立乙個zip檔案,接著使用addfile方法,將要打包的檔案寫入剛剛建立的zip檔案中,最好還得記得關閉該物件。
b) 注意點:使用open方法的時候,第二個引數$flags是可選的,$flags用來指定對開啟的zip檔案的處理方式,共有四種情況
i. ziparchive::overwrite 總是建立乙個新的檔案,如果指定的zip檔案存在,則會覆蓋掉
ii. ziparchive::create 如果指定的zip檔案不存在,則新建乙個
iii. ziparchive::excl 如果指定的zip檔案存在,則會報錯
iv. ziparchive::checkcons
php生成壓縮包
filename date ymdh zip 最終生成的檔名 含路徑 生成檔案 zip new ziparchive 使用本類,linux需開啟zlib,windows需取消php zip.dll前的注釋 if zip open filename ziparchive overwrite true ...
php生成壓縮包和開啟壓縮包
需呀用到ziparchive類,php預設帶的有,廢話不說,直接上 親測可以使用,先來個生成壓縮包,解壓縮包後邊補上 開啟php支援ziparchive 在php.ini檔案中將extension php zip.dll 開頭的 的去掉,重啟www伺服器就可以了 1 對多個檔案生成壓縮包 生成壓縮檔...
PHP生成zip壓縮包
我們將乙個檔案生成乙個壓縮包。path c wamp www log.txt filename test.zip zip new ziparchive zip open filename,ziparchive create 開啟壓縮包 zip addfile path,basename path 向...