1. 程式人生 > >PHP實現將多個檔案壓縮成zip格式並下載到本地的方法示例

PHP實現將多個檔案壓縮成zip格式並下載到本地的方法示例

本文例項講述了PHP實現將多個檔案壓縮成zip格式並下載到本地的方法。分享給大家供大家參考,具體如下:

廢話不多說,直接上程式碼

?
123456789101112131415//這裡需要注意該目錄是否存在,並且有建立的許可權$zipname = 'path/test.zip'//這是要打包的檔案地址陣列$files = array("mypath/test1.txt","mypath/test2.pdf");$zip = new ZipArchive();$res = $zip->open($zipname, ZipArchive::CREATE);if ($res === TRUE) {foreach (
$files as $file) {//這裡直接用原檔案的名字進行打包,也可以直接命名,需要注意如果檔名字一樣會導致後面檔案覆蓋前面的檔案,所以建議重新命名$new_filename = substr($file, strrpos($file, '/') + 1);$zip->addFile($file, $new_filename);}}//關閉檔案$zip->close();
?
1234567//這裡是下載zip檔案header("Content-Type: application/zip");header("Content-Transfer-Encoding: Binary");header(
"Content-Length: " . filesize($zipname));header("Content-Disposition: attachment; filename=\"" . basename($zipname) . "\"");readfile($zipname);exit;

附:這裡再為大家提供一個zip壓縮類:

?
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364

相關推薦

PHP實現檔案壓縮zip格式下載本地方法示例

本文例項講述了PHP實現將多個檔案壓縮成zip格式並下載到本地的方法。分享給大家供大家參考,具體如下:廢話不多說,直接上程式碼?123456789101112131415//這裡需要注意該目錄是否存在,並且有建立的許可權$zipname = 'path/test.zip'//

php 檔案壓縮zip下載本地

廢話不多說,直接上程式碼 //這裡需要注意該目錄是否存在,並且有建立的許可權 $zipname = 'path/test.zip' //這是要打包的檔案地址陣列 $files = array("

python實現檔案分配到資料夾

import os import shutil #path of imgr path = 'D:\\BaiduNetdiskDownload\\newim\\' #path of folder folderPath = 'D:\\BaiduNetdiskDo

如何PDF合併一個PDF?這樣的方法最簡單

  現在很多PDF文獻資料都是以多個檔案進行上傳,也就是一個完整的文件可能會被分成幾個部分,文章是被分成很多個這樣預覽起來會比較的麻煩,那我們如何將多個PDF合併成一個PDF格式呢?   下面看看迅捷轉換器(www.xunjiepdf.com)如何將多個PDF檔案合併成一個PDF。   軟體

PHP 利用 ZipArchive 檔案生成壓縮下載 和解壓壓縮

本人是在工作中需要將阿里雲oss的圖片通過頁面進行多選,然後生成壓縮包的形式下載,由於oss不支援改功能,則使用的 ZipArchive 進行壓縮下載 下面是方法: $zipname =

java web 實現檔案壓縮下載

檔案下載時,我們可能需要一次下載多個檔案。批量下載檔案時,需要將多個檔案打包為zip,然後再下載。實現思路有兩種:一是將所有檔案先打包壓縮為一個檔案,然後下載這個壓縮包,二是一邊壓縮一邊下載,將多個檔案逐一寫入到壓縮檔案中。我這裡實現了邊壓縮邊下載。 下載樣式: 點選下載

javaweb通過介面來實現檔案壓縮下載(包括單檔案下載檔案批量下載

  程式設計師在做web等專案的時候,往往都需要新增檔案上傳、下載、刪除的功能,有時是單檔案,有時多檔案批量 操作,而這些功能的程式碼程式設計師可以自己收藏起來當成工具使用,這樣,程式設計師在進行程式設計的時候就會事半功倍 了,那麼接下來的部落格將會介紹各個框架的檔案上傳和下

檔案進行壓縮處理,然後傳輸到伺服器

目前專案正需要多個檔案壓縮上傳,在這裡遇到一些坑與解決方案。 我這裡的問題是從印表機影印,掃描時候的留底檔案。在拿到檔案路徑後,就要根據這個路徑拿到檔案,進行壓縮傳輸,可供下載。 其中遇到的問題 1、使用這個thumbnailator-0.4.7.jar對圖片進行再壓縮,會

php 檔案壓縮到一起儲存

$zip = new ZipArchive();$res = $zip->open('test.zip', ZipArchive::CREATE); //不存在則建立$filepath = 'sendmsg.php';$zip->addFile($filepath);$zip->close(

圖片轉換pdf檔案方法

JPG和PDF都是我們平時接觸比較多的檔案格式,大多數的圖片都是以jpg格式的儲存的,但是也有部分以pdf格式儲存的,如果對比我們會發現以pdf格式儲存的圖片瀏覽更方便,也更適合大量檔案儲存,那麼

java檔案一起打zip包後下載例項

//檔案打包下載     public static HttpServletResponse downLoadFiles(List<File> files,             HttpServletRequest request, HttpServlet

ETL工具kettle怎麽轉換集到一個作業中

順序 tar size 作業 ext watermark mar proc 很多 在實際工作中,經常會出現很多個轉換,這樣管理成本會很高,那麽這時就可以采取一種方式將這些轉換集成到一個作業之中,可以看一個現成的例子,如圖我們在這一個作業中集成了四個轉換,有一點需要說明,就是

用eclipsejar打包一個jar

在開發java程式時,經常要用到第三方jar包。釋出java程式時,若帶著一大堆第三方jar包,既不方便,命令列也挺長,容易出錯。若是能將所有的第三方jar檔案連同程式執行檔案一併打包成一個jar,使用就會方便得多。經過摸索,可以使用eclipse完成此項功能。步驟如下:

.net中如何把檔案合併一個檔案

懶得再單獨寫一個,所以就加了超級詳細的註釋 前幾個判斷主要是合併sql檔案,什麼樣的sql對應的什麼樣的處理, 最後一個判斷是合併任何檔案 方法的兩個引數:第一個是開啟檔案路徑的集合,第二個引數檔案儲存路徑 private void FileMerge(strin

linux的tar命令詳情;linux檔案壓縮打包到一個壓縮檔案

tar命令 可以用來壓縮打包單檔案、多個檔案、單個目錄、多個目錄。 Linux打包命令_tar tar命令可以用來壓縮打包單檔案、多個檔案、單個目錄、多個目錄。 常用格式: 單個檔案壓縮打包 tar czvf my.tar.gz file1 多個檔案壓縮打包

Linux檔案生成.so檔案

本工程共有三個檔案:myhello.c、myhello.h、Makefile myhello.c程式碼如下: #include <stdio.h> #include <string.h> #include "myhello.h" voi

[Hive]用concat_w實現行記錄合併一行

建表如下: # 建立商品與促銷活動的對映表 hive -e "set mapred.job.queue.name=pms; set hive.exec.reducers.max=32; set ma

檔案合併為一個檔案

實現效果:    知識運用:   FileStream  和BinaryReader  及BinaryWriter類  實現程式碼: /// <summary> /// 檔案合併 /// </sum

vs中檔案合併一個檔案顯示

主要是通過修改 .csproj 檔案來達到顯示合併的效果,看測試: 新建一個控制檯程式,然後新建2個類Class1和Class2【它們都是partial類,是不是partial無所謂,主要看你怎麼按業務分塊組合】。 然後記事本開啟.csproj檔案。將Class2的Com

git合併commit壓縮一個點

原文地址:http://platinhom.github.io/2016/01/02/git-combine_commit/ 有時commit多了看著會不爽.所以想合併掉一些commit. 這裡是最簡單的情況, 一條線下來N個commit, 合併掉末端的(沒有branch出去的). 假設有a,b,c,d四個