(PHP ActiveX) Unzip Files to Byte Array
Demonstrates how to unzip each file contained in a .zip to an in-memory byte array.
<?php
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
// For versions of Chilkat < 10.0.0, use new COM('Chilkat_9_5_0.Chilkat.Zip')
$zip = new COM("Chilkat.Zip");
$success = $zip->OpenZip('qa_data/zips/test.zip');
if ($success == 0) {
print $zip->LastErrorText . "\n";
exit;
}
// Iterate of each entry in the zip.
// An entry can be a file or directory entry. For each file, unzip to a byte array.
$numEntries = $zip->NumEntries;
print 'NumEntries = ' . $numEntries . "\n";
$i = 0;
while ($i < $numEntries) {
// entry is a Chilkat.ZipEntry
$entry = $zip->GetEntryByIndex($i);
if ($entry->IsDirectory == 0) {
$fileData = $entry->Inflate();
// Do whatever you wish with the file data...
}
$i = $i + 1;
}
$zip->CloseZip();
print 'Finished.' . "\n";
?>
|