Sample code for 30+ languages & platforms
PHP Extension Requires Chilkat v11.0.0+

Create a Zip Entirely in Memory

See more Zip Examples

Demonstrates how to create a .zip from in-memory byte data and strings, and to write the .zip to an in-memory image.

Chilkat PHP Extension Downloads

PHP Extension
<?php

include("chilkat.php");

$success = false;

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

$crypt = new CkCrypt2();
$zip = new CkZip();

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

//  Add the bytes 0x00 0x01 0x02 0x03 ... 0x0F as a file in the .zip
$bd = new CkBinData();
$bd->AppendEncoded('000102030405060708090A0B0C0D0E0F','hex');
$zip->AddBd('binaryData.dat',$bd);

//  Add the string "Hello World!" to the .zip
$zip->AddString('helloWorld.txt','Hello World!','utf-8');

$zipFileInMemory = new CkByteData();
$success = $zip->WriteToMemory($zipFileInMemory);

//  We could save these files to a file, and it is a valid .zip
$fac = new CkFileAccess();
$success = $fac->WriteEntireFile('test.zip',$zipFileInMemory);
if ($success == false) {
    print $fac->lastErrorText() . "\n";
    exit;
}

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

?>