เราสามารถใช้คลาส ZipArchive ของ PHP เพื่อบีบอัด (Zip) และแตกไฟล์ (Unzip) โฟลเดอร์ใน PHP ตั้งแต่ PHP 5.3 คลาสนี้ในตัวแล้ว สำหรับผู้ใช้ Windows ต้องเปิด extension php_zip.dll ใน php.ini
ตัวอย่าง
<?php
// ชื่อไดเรกทอรีที่ต้องการบีบอัด
$pathdir = "Directory Name/";
// ชื่อไฟล์ zip ที่จะสร้าง
$zipcreated = "test.zip";
// สร้างอ็อบเจกต์ ZipArchive ใหม่
$newzip = new ZipArchive;
if($newzip->open($zipcreated, ZipArchive::CREATE) === TRUE) {
$dir = opendir($pathdir);
while($file = readdir($dir)) {
if(is_file($pathdir.$file)) {
$newzip->addFile($pathdir.$file, $file);
}
}
$newzip->close();
}
?>