麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 語言 > PHP > 正文

PHP生成zip壓縮包的常用方法示例

2024-05-05 00:10:59
字體:
來源:轉載
供稿:網友

本文實例講述了PHP生成zip壓縮包的常用方法。分享給大家供大家參考,具體如下:

壓縮一個文件

我們將一個文件生成一個壓縮包。

<?php$path = "c:/wamp/www/log.txt";$filename = "test.zip";$zip = new ZipArchive();$zip->open($filename,ZipArchive::CREATE);  //打開壓縮包$zip->addFile($path,basename($path));  //向壓縮包中添加文件$zip->close(); //關閉壓縮包

上述代碼將c:/wamp/www/log.txt文件壓縮生成了test.zip,并保存在當前目錄。

壓縮多個文件

壓縮多個文件,其實就是addFile執行多次,可以通過數組的遍歷來實現。

<?php$fileList = array(  "c:/wamp/www/log.txt",  "c:/wamp/www/weixin.class.php");$filename = "test.zip";$zip = new ZipArchive();$zip->open($filename,ZipArchive::CREATE);  //打開壓縮包foreach($fileList as $file){  $zip->addFile($file,basename($file));  //向壓縮包中添加文件}$zip->close(); //關閉壓縮包

壓縮一個目錄

<?phpfunction addFileToZip($path,$zip){  $handler=opendir($path); //打開當前文件夾由$path指定。  while(($filename=readdir($handler))!==false){    if($filename != "." && $filename != ".."){//文件夾文件名字為'.'和‘..',不要對他們進行操作      if(is_dir($path."/".$filename)){// 如果讀取的某個對象是文件夾,則遞歸        addFileToZip($path."/".$filename, $zip);      }else{ //將文件加入zip對象        $zip->addFile($path."/".$filename);      }    }  }  @closedir($path);}$zip=new ZipArchive();if($zip->open('rsa.zip', ZipArchive::OVERWRITE)=== TRUE){  addFileToZip('rsa/', $zip); //調用方法,對要打包的根目錄進行操作,并將ZipArchive的對象傳遞給方法  $zip->close(); //關閉處理的zip文件}

壓縮并下載zip包

我的時候,我們需要打包之后,提供下載,然后刪除壓縮包。

可以分為以下幾步:

  1. 判斷給出的路徑,是文件夾,還是文件。文件夾還需要遍歷添加文件。
  2. 設置相關文件頭,并使用readfile函數提供下載。
  3. 使用unlink函數刪除壓縮包
<?phpfunction addFileToZip($path,$zip){  $handler=opendir($path); //打開當前文件夾由$path指定。  while(($filename=readdir($handler))!==false){    if($filename != "." && $filename != ".."){//文件夾文件名字為'.'和‘..',不要對他們進行操作      if(is_dir($path."/".$filename)){// 如果讀取的某個對象是文件夾,則遞歸        addFileToZip($path."/".$filename, $zip);      }else{ //將文件加入zip對象        $zip->addFile($path."/".$filename);      }    }  }  @closedir($path);}$zip=new ZipArchive();if($zip->open('rsa.zip', ZipArchive::OVERWRITE)=== TRUE){  $path = 'rsa/';  if(is_dir($path)){ //給出文件夾,打包文件夾    addFileToZip($path, $zip);  }else if(is_array($path)){ //以數組形式給出文件路徑    foreach($path as $file){      $zip->addFile($file);    }  }else{   //只給出一個文件    $zip->addFile($path);  }  $zip->close(); //關閉處理的zip文件}

希望本文所述對大家PHP程序設計有所幫助。


注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 国产高清美女一级毛片久久 | 97青青草视频 | 黄色成人短视频 | 91网站在线观看视频 | 91精品国产九九九久久久亚洲 | 91在线视频在线观看 | 久久视频精品 | 黄视频在线网站 | 国产精品自拍av | 成人激情在线 | 国产精品99久久久久久大便 | 日本中文字幕高清 | 全黄裸片武则天艳史 | 日韩美香港a一级毛片免费 日韩激情 | 久久精品一二三区白丝高潮 | 欧美视频一区二区三区四区 | 国产精品亚洲精品久久 | 亚洲影视中文字幕 | a一级黄 | 亚洲一区二区三区精品在线观看 | 免费看真人a一级毛片 | 久久精品一二三区 | 久久久久亚洲a | 免费毛片电影 | 麻豆视频国产在线观看 | 爱唯侦察 国产合集 亚洲 | 免费观看黄色影片 | 黑人日比 | 国产中文99视频在线观看 | 色999久久久精品人人澡69 | a视频网站| 精品久久中文网址 | 成人毛片100免费观看 | 丰满年轻岳中文字幕一区二区 | 成人福利视频 | 中文区中文字幕免费看 | 三人弄娇妻高潮3p视频 | 国产成年人在线观看 | 日本黄色大片免费 | 久久久久久久久久久久久九 | 黄色片网站在线看 |