首頁  >  文章  >  後端開發  >  PHP 壓縮文件

PHP 壓縮文件

WBOY
WBOY原創
2024-08-29 12:55:501261瀏覽

PHP Zip 檔案函數用於將一堆檔案或目錄以壓縮形式儲存在一起。 Zip 是存檔檔案格式,用於以壓縮形式儲存檔案。 Zip 檔案可以方便地將許多檔案或目錄以壓縮形式儲存在一起,以便儲存和共用它們。 PHP Zip 檔案不是PHP 中的內建函數,因為PHP 中還有其他內建函數,因此如果該類別不存在,我們需要安裝該類別;如果我們使用PHP 5 或其他更新版本,則可以免費下載和安裝所需的擴展。 Zip 擴充功能需要 libzip。

開始您的免費軟體開發課程

網頁開發、程式語言、軟體測試及其他

要使用 Zip 文件,我們需要如下執行安裝 –

Linux 使用者(PHP 5+):

  • Linux 使用者必須下載並包含 PHP Zip 函數和函式庫,因為預設情況下它們不是內建的。
  • 確保安裝libzip版本0.11或更高版本,建議版本0.11.2或更高版本。
  • 在 PHP 編譯期間,使用設定選項 –with-libzip=DIR 來包含 Zip 支援。
  • 要啟用 Zip 功能,必須使用 –enable-zip 標誌編譯 PHP。

Windows 使用者(PHP 5+):

  • 與 Linux 類似,Windows 使用者預設沒有內建 PHP Zip 函數和函式庫。
  • 下載並啟用位於 php.ini 設定檔內的 php_zip.dll 文件,以使用 Zip 功能。
  • 請注意,在 PHP 5.3 中,此擴充功能已內置,因此不需要額外的步驟。

功能

在處理 Zip 檔案時,我們需要使用下面提到的一些函數 –

  • zip_open():開啟 ZIP 檔案存檔以供閱讀。
  • zip_read():讀取開啟的 ZIP 檔案存檔中的下一個檔案。
  • zip_entry_open():開啟 ZIP 檔案中的目錄條目以供讀取。
  • zip_entry_read():從 ZIP 檔案中的開啟目錄條目讀取。
  • zip_entry_compressedsize():擷取 ZIP 目錄條目的壓縮檔案大小。
  • zip_entry_compressionmethod():檢索 ZIP 目錄條目的壓縮方法。
  • zip_entry_filesize():檢索 ZIP 目錄條目的檔案的實際大小。
  • zip_entry_name():檢索 ZIP 目錄條目的名稱。
  • zip_close():關閉 ZIP 檔案存檔。
  • zip_entry_close():關閉 ZIP 目錄項目。

PHP XML 到陣列的範例

建立 Zip 檔案的 PHP Zip 檔案範例 -

接下來,我們編寫 PHP 程式碼,透過以下範例更清楚地理解 PHP Zip 文件,其中 Zip 檔案用於以壓縮形式將一堆文件和目錄儲存在一起,如下所示 –

範例#1

首先,我們將建立資料夾,然後建立我們想要捆綁的檔案或目錄並壓縮它們;然後我們使用 PHP 程式碼來壓縮它們。

代碼:

<?php
// give the path of directory whose file we want to Zip
$dir_path = "C:/xampp/htdocs/programs/";
// give the name to create the zipped directory
$zipfile = "ExZip.zip";
// Creating the new zip class
$zip_obj = new ZipArchive;
if( $zip_obj -> open( $zipfile, ZipArchive::CREATE ) === TRUE )
{
// open the directory at the gien path into the variable
$dir = opendir( $dir_path );
while( $file = readdir( $dir )) {
if( is_file( $dir_path.$file )) {
$zip_obj -> addFile( $dir_path.$file, $file );
}
}
$zip_obj ->close();
}
?>

輸出:

PHP 壓縮文件

如上面的程式碼所示,它具有目錄路徑(從所有檔案到 Zip 的位置)和檔案名稱(以建立 zip 檔案的名稱)。首先,使用以下程式碼「$zip_obj = new ZipArchive;」建立 ZipArchive 類別物件。然後迭代該目錄路徑中的所有可用文件,然後透過使用 ZipArchive 對象,使用此程式碼「$zip_obj ->」將檔案新增至 Zip 檔案中。 addFile( $dir_path.$file, $file );.」

範例#2

PHP Zip 檔案範例解壓縮 Zip 檔案 -

接下來,我們編寫 PHP 程式碼來理解 PHP Zip 文件,其中 Zip 檔案被解壓縮以提取這裡的所有壓縮檔案或目錄,如下 –

代碼:

<?php
// Enter the path of directory
$dir_path = "C:/xampp/htdocs/programs/";
// give the name to create the zipped directory
$zipfile = "ExZip.zip";
// create new zip class object
$zip_obj = new ZipArchive;
$file = $dir_path.$zipfile;
print("The Zip file location is : ");
print($file);
// Add zip filename which we need to unzip
$zip_obj->open( $file );
// Extract all the Zip files to the current directory
$zip_obj->extractTo('./');
$zip_obj->close();
?>

輸出:

PHP 壓縮文件

如上面的程式碼,它有目錄路徑和檔案名稱(要解壓縮哪個檔案)。首先,使用以下程式碼「$zip_obj = new ZipArchive;」建立 ZipArchive 類別物件。然後,透過使用 ZipArchive 對象,從該路徑開啟文件,然後使用以下程式碼「$zip_obj -> 」提取新增至 Zip 檔案中的所有檔案。 extractTo(‘./’);”.

以上是PHP 壓縮文件的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
上一篇:PHP sscanf()下一篇:PHP sscanf()