php內建壓縮類壓縮檔夾

來源:互聯網
上載者:User

標籤:dir   code   log   name   指定   osi   adf   建立   方法   

// 壓縮檔夾function 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對象                /*                   *  addFile(參數1,參數2)                  *  參數1:檔案完整路徑(含檔案名稱)                  *  參數2:自訂新檔案名稱(不含路徑就直接加在壓縮包根目錄,否則將在壓縮包中自動建立對應目錄)                  *  */                $zip->addFile($path."/".$filename, $filename);            }        }    }    @closedir($path);}$zip = new ZipArchive();$dirname = ‘/Uploads/text_dir‘;     // 需要打包的檔案夾$zip_name = ‘download/‘.$id.‘.zip‘;    // 打包後的檔案$res = $zip->open($zip_name, ZipArchive::CREATE);if($res === TRUE){        addFileToZip($dirname, $zip); //調用方法,對要打包的根目錄進行操作,並將ZipArchive的對象傳遞給方法        $zip->close(); //關閉處理的zip檔案        // 瀏覽器下載        header(‘Content-Type: application/zip‘);        header(‘Content-Disposition: attachment; filename=‘.$zip_name);        header(‘Content-Length: ‘.filesize($zip_name));        readfile($zip_name);}else{    echo "<script>alert(‘建立壓縮包失敗‘);location.reload();</script>";exit;}

 

php內建壓縮類壓縮檔夾

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.