(PHP ActiveX) Create a Zip Entirely in Memory
Demonstrates how to create a .zip from in-memory byte data and strings, and to write the .zip to an in-memory image.
<?php
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
$crypt = new COM("Chilkat_9_5_0.Crypt2");
$zip = new COM("Chilkat_9_5_0.Zip");
$success = $zip->NewZip('test.zip');
if ($success != 1) {
print $zip->LastErrorText . "\n";
exit;
}
// Add the bytes 0x00 0x01 0x02 0x03 ... 0x0F as a file in the .zip
$binFileData = $crypt->Decode('000102030405060708090A0B0C0D0E0F','hex');
// entry is a Chilkat_9_5_0.ZipEntry
$entry = $zip->AppendData('binaryData.dat',$binFileData);
// Add the string "Hello World!" to the .zip
// entry is a Chilkat_9_5_0.ZipEntry
$entry = $zip->AppendString2('helloWorld.txt','Hello World!','utf-8');
$zipFileInMemory = $zip->WriteToMemory();
// We could save these files to a file, and it is a valid .zip
$fac = new COM("Chilkat_9_5_0.FileAccess");
$success = $fac->WriteEntireFile('test.zip',$zipFileInMemory);
if ($success != 1) {
print $fac->LastErrorText . "\n";
exit;
}
print 'Zip Created!' . "\n";
?>
|