<pre id="p1pz5"><delect id="p1pz5"></delect></pre>
<output id="p1pz5"><delect id="p1pz5"><listing id="p1pz5"></listing></delect></output>

<p id="p1pz5"></p>

<pre id="p1pz5"></pre>

<p id="p1pz5"></p>
<pre id="p1pz5"><output id="p1pz5"></output></pre>
<pre id="p1pz5"><output id="p1pz5"><delect id="p1pz5"></delect></output></pre><pre id="p1pz5"></pre>

<p id="p1pz5"><output id="p1pz5"></output></p>

<p id="p1pz5"><output id="p1pz5"><menuitem id="p1pz5"></menuitem></output></p>

<output id="p1pz5"></output>
<pre id="p1pz5"><output id="p1pz5"></output></pre>

<p id="p1pz5"><delect id="p1pz5"><menuitem id="p1pz5"></menuitem></delect></p>

<p id="p1pz5"></p>
<p id="p1pz5"><output id="p1pz5"></output></p>
<p id="p1pz5"><output id="p1pz5"></output></p>

<p id="p1pz5"><output id="p1pz5"></output></p>
<p id="p1pz5"></p>

<output id="p1pz5"><delect id="p1pz5"></delect></output>

<p id="p1pz5"></p>

<p id="p1pz5"></p>

<p id="p1pz5"></p>
<p id="p1pz5"><delect id="p1pz5"><address id="p1pz5"></address></delect></p>

<pre id="p1pz5"></pre>

<pre id="p1pz5"><output id="p1pz5"><delect id="p1pz5"></delect></output></pre>

畢業設計網
開發環境 |

php將文件夾打包成zip文件

、為了將文件夾的內容打包,需要循環操作,所以先建立一個函數,用于對子文件夾打包

//這個函數需要傳遞兩個參數,第一個$path是當前操作的文件夾路徑,第二個是ZipArchive對象

function addFileToZip($path, $zip)

{

2、打開當前操作的文件夾,并用一個變量指向它

//打開當前文件夾由$path指定。

$handler = opendir($path);

      3、循環的讀取文件夾下的所有文件和文件夾

      /*

     其中$filename = readdir($handler)是每次循環的時候將讀取的文件名賦值給$filename,為了不陷于死循環,所以還要讓$filename !== false。
      一定要用!==,因為如果某個文件名如果叫'0',或者某些被系統認為是代表false,用!=就會停止循環

     */

      while( ($filename = readdir($handler)) !== false )

      {

            4、文件夾下都會有兩個文件,名字為'.'和‘..’,不要對他們進行操作

            if($filename != "." && $filename != "..")

            {

                 5、如果讀取的某個對象是文件夾

                // 對于文件夾,is_dir會返回FALSE,注意路徑是$path."/".$filename

                 if(is_dir($path."/".$filename))

                 {

                6、對于文件夾,再次調用函數addFileToZip,并將當前操作的文件夾路徑傳遞給函數

                 addFileToZip($path."/".$filename, $zip);

                7、如果讀取的某個對象是文件

                 }else{

                //將文件加入zip對象

                 $zip->addFile($path."/".$filename);

                 }

            }

      }

8、關閉當前操作的文件夾

//當前文件夾由$path指定。

closedir($path);

}

 

//以下是函數外的代碼

9、新建一個ZipArchive的對象

$zip = new ZipArchive;

10、通過ZipArchive的對象處理zip文件

/*

$zip->open這個方法第一個參數表示處理的zip文件名。

第二個參數表示處理模式。如果參數使用ZipArchive::OVERWRITE,系統會覆蓋掉原來的zip文件。

如果zip文件不存在,系統都會自動新建。

如果對zip文件對象操作成功,$zip->open這個方法會返回TRUE

*/

if ($zip->open('test.zip', ZipArchive::OVERWRITE) === TRUE)

{

11、調用函數,對要打包的根目錄進行操作,并將ZipArchive的對象傳遞給函數

addFileToZip('book/php', $zip);

     12、關閉處理的zip文件

      $zip->close();

}

  

以上是一部分介紹,如需要完整的資料或者如不符合您的要求,請聯系技術人員qq:242219979咨詢

上一篇:php將文件壓縮成zip文件
下一篇:ASP.NET與IIS配置


版權所有 畢業設計網聯系qq:242219979 © 2007-2022

蝴蝶中文综合娱乐网

<pre id="p1pz5"><delect id="p1pz5"></delect></pre>
<output id="p1pz5"><delect id="p1pz5"><listing id="p1pz5"></listing></delect></output>

<p id="p1pz5"></p>

<pre id="p1pz5"></pre>

<p id="p1pz5"></p>
<pre id="p1pz5"><output id="p1pz5"></output></pre>
<pre id="p1pz5"><output id="p1pz5"><delect id="p1pz5"></delect></output></pre><pre id="p1pz5"></pre>

<p id="p1pz5"><output id="p1pz5"></output></p>

<p id="p1pz5"><output id="p1pz5"><menuitem id="p1pz5"></menuitem></output></p>

<output id="p1pz5"></output>
<pre id="p1pz5"><output id="p1pz5"></output></pre>

<p id="p1pz5"><delect id="p1pz5"><menuitem id="p1pz5"></menuitem></delect></p>

<p id="p1pz5"></p>
<p id="p1pz5"><output id="p1pz5"></output></p>
<p id="p1pz5"><output id="p1pz5"></output></p>

<p id="p1pz5"><output id="p1pz5"></output></p>
<p id="p1pz5"></p>

<output id="p1pz5"><delect id="p1pz5"></delect></output>

<p id="p1pz5"></p>

<p id="p1pz5"></p>

<p id="p1pz5"></p>
<p id="p1pz5"><delect id="p1pz5"><address id="p1pz5"></address></delect></p>

<pre id="p1pz5"></pre>

<pre id="p1pz5"><output id="p1pz5"><delect id="p1pz5"></delect></output></pre>