Sample code for 30+ languages & platforms
PHP

Zip -- Exclude Files Based on Wildcard Matching

See more Zip Examples

Demonstrates how to use the SetExclusions method to exclude matching files from being added to a .zip.

Chilkat PHP Downloads

Chilkat2 PHP
<?php

use Chilkat2\StringArray;
use Chilkat2\Zip;

$zip = new Zip();

$zip->NewZip('qa_output/x.zip');

// Let's add files from the directory tree rooted at C:\AAWorkarea\ChilkatSampleProjects

// However.. we want to exclude all files ending in ".cache" or ".pdb" regardless of the sub-directory.
// Also exclude all files under any "obj" directory,
// and we also want to exclude any .exe found under a "win10-x64" directory.

$saExcludes = new StringArray();
$saExcludes->Append('*.cache');
$saExcludes->Append('*.pdb');
$saExcludes->Append('*/obj/*');
$saExcludes->Append('*/win10-x64/*.exe');
$zip->SetExclusions($saExcludes);

// Append promises of paths and files to be zipped.
$recurse = true;
try {
    $zip->AppendFiles('c:/AAWorkArea/ChilkatSampleProjects/*', $recurse);

    // Create the zip from the file and directory promises added previously.
    $zip->WriteZipAndClose();
} catch (\Chilkat2\Exception $e) {
    echo $e->getMessage(), "\n";
    exit;
}

echo "Success.\n";