Sample code for 30+ languages & platforms
PHP ActiveX

Zip a Directory Tree

See more Zip Examples

Demonstrates how to zip an entire directory tree into a .zip archive.

Chilkat PHP ActiveX Downloads

PHP ActiveX
<?php

$success = 0;

// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

$zip = new COM("Chilkat.Zip");

$success = $zip->NewZip('test.zip');
if ($success != 1) {
    print $zip->LastErrorText . "\n";
    exit;
}

// Append a directory tree.  The call to AppendFiles does
// not read the file contents or append them to the zip
// object in memory.  It simply appends references
// to the files so that when WriteZip or WriteZipAndClose 
// is called, the referenced files are streamed and compressed
// into the .zip output file.

$recurse = 1;
$success = $zip->AppendFiles('c:/temp/a/*',$recurse);
if ($success != 1) {
    print $zip->LastErrorText . "\n";
    exit;
}

$success = $zip->WriteZipAndClose();
if ($success != 1) {
    print $zip->LastErrorText . "\n";
    exit;
}

print 'Zip Created!' . "\n";

?>