主頁(yè) > 知識(shí)庫(kù) > php ZipArchive實(shí)現(xiàn)多文件打包下載實(shí)例

php ZipArchive實(shí)現(xiàn)多文件打包下載實(shí)例

熱門標(biāo)簽:泊頭在哪里辦理400電話 高德地圖標(biāo)注位置怎么標(biāo)注 杭州語(yǔ)音電銷機(jī)器人 高德地圖標(biāo)注店鋪收費(fèi)嗎 江門回?fù)芡夂粝到y(tǒng) 天潤(rùn)融通外呼系統(tǒng)好嗎 江西電銷機(jī)器人收費(fèi) 欣思維地圖標(biāo)注 電銷機(jī)器人沒有效果怎么樣

實(shí)例代碼:

public function downLoad($dataUrl,$saveName)
  {
    $datalist = [
      ROOT_PATH.'/public/introduce/110.docx',
      ROOT_PATH.'/public/upfile/110.zip'
    ];
//    print_r($datalist);die;
    $filename = ROOT_PATH.'\public\/'.$saveName.'.zip';
    if(file_exists($filename)){
      unlink($filename);
    }

    $zip = new \ZipArchive();
    if ($zip->open($filename,\ZipArchive::CREATE)!== true){
      exit('無法打開文件,或者文件創(chuàng)建失敗');
    }

    foreach ($dataUrl as $index => $item) {
      if (DIRECTORY_SEPARATOR=='\\'){
        $item = str_replace('/',DIRECTORY_SEPARATOR,$item);
        $filename = str_replace('/',DIRECTORY_SEPARATOR,$filename);
      }
//      var_dump($item);
//      var_dump(file_exists($item));die;
      if (file_exists($item)){
        $zip->addFile($item,basename($item));
      }
    }

    $zip->close();
    if(!file_exists($filename)){
      exit("無法找到文件"); //即使創(chuàng)建,仍有可能失敗
    }
    header('Content-Type: application/zip');
    header('Content-disposition: attachment; filename='.basename($filename));
    header('Content-Length: ' . filesize($filename));
    @readfile($filename);
     @unlink ( $filename );
}

注意:里面的路徑全部用絕對(duì)路徑,不然會(huì)找不到文件

附贈(zèng)其他操作:

解壓縮zip文件

public function unzip_file($file, $dir){ 

    // 實(shí)例化對(duì)象 

    $zip = new ZipArchive() ; 

    //打開zip文檔,如果打開失敗返回提示信息 

    if ($zip->open($file) !== TRUE) { 

     die ("Could not open archive"); 

    } 

    //將壓縮文件解壓到指定的目錄下 

    $zip->extractTo($dir); 

    //關(guān)閉zip文檔 

    $zip->close(); 

  }

獲取解壓文件目錄

public function loopFun($dir) 

  { 

    $handle = opendir($dir.".");

    //定義用于存儲(chǔ)文件名的數(shù)組

    $array_file = array();

    while (false !== ($file = readdir($handle)))

    {

      if ($file != "."  $file != "..") {

        $array_file[] = $dir.'/'.$file; //輸出文件名

      }

    }

    closedir($handle);

    return $array_file;

    //print_r($array_file);

  }

大家可以在本地測(cè)試下,感謝大家的學(xué)習(xí)和對(duì)腳本之家的支持。

您可能感興趣的文章:
  • php利用ZipArchive類操作文件的實(shí)例
  • PHP生成zip壓縮包的常用方法示例
  • php解壓縮zip和rar壓縮包文件的方法
  • 實(shí)例介紹PHP中zip_open()函數(shù)用法
  • PHP zip壓縮包操作類完整實(shí)例
  • PHP實(shí)現(xiàn)打包zip并下載功能
  • PHP實(shí)現(xiàn)將多個(gè)文件壓縮成zip格式并下載到本地的方法示例
  • PHP使用zlib擴(kuò)展實(shí)現(xiàn)GZIP壓縮輸出的方法詳解
  • linux服務(wù)器安裝PHP擴(kuò)展zip,zlib方法
  • 基于PHP安裝zip拓展,以及l(fā)ibzip安裝的問題
  • php 解壓zip壓縮包內(nèi)容到指定目錄的實(shí)例
  • php操作zip在不解壓縮包的情況下顯示壓縮包中的圖片
  • 如何使用php生成zip壓縮包

標(biāo)簽:江門 石嘴山 內(nèi)江 深圳 雙鴨山 駐馬店 大同

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《php ZipArchive實(shí)現(xiàn)多文件打包下載實(shí)例》,本文關(guān)鍵詞  php,ZipArchive,實(shí)現(xiàn),多,文件,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《php ZipArchive實(shí)現(xiàn)多文件打包下載實(shí)例》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于php ZipArchive實(shí)現(xiàn)多文件打包下載實(shí)例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章