Reputation: 2105
I tried to create empty/not empty zip archive.
Code used is below.
Result: nothing happened.
No errors, but also no results.
Any explanation appreciated.
$zip = new ZipArchive(); $zip->open('/home/admin/domains/domain.com/public_html/xxx_zip.zip', ZIPARCHIVE::CREATE); $zip->addFile('/home/admin/domains/domain.com/public_html/xxxxxx.css'); #$zip->addEmptyDir('.'); //also tried $zip->close();
available
Zip enabled
Extension Version $Id: php_zip.c,v 1.1.2.50 2009/03/01 17:35:25 iliaa Exp $
Zip version 1.8.11
Libzip version 0.9.0
Upvotes: 2
Views: 1234
Reputation: 1194
check out other examples but this is how I got it working:
<?php
$dirArray = array();
/* creates a compressed zip file */
$zip = new ZipArchive;
if ($zip->open('dataminefiles.zip', ZIPARCHIVE::CREATE) !== TRUE) {
die ("Could not open archive");
}
// open the current dir
if ($handle = opendir('.')) {
while (false !== ($entry = readdir($handle))) {
// ignore hidden files
if ($entry != "." && $entry != "..") {
// only zip specific files
if ( substr($entry,-3,3) == "jpg" || substr($entry,-3,3) == "pdf" || substr($entry,-3,3) == "lsx" || substr($entry,-3,3) == "xls" || substr($entry,-3,3) == "doc" || substr($entry,-3,3) == "txt" || substr($entry,-3,3) == "png" || substr($entry,-3,3) == "gif" || substr($entry,-3,3) == "peg" ) {
// if allowed, add them to the array
$dirArray[] = $entry;
}
}
}
closedir($handle);
}
$indexCount = count($dirArray);
sort($dirArray);
// loop through the files and add them to the zip file
for($index=0; $index < $indexCount; $index++) {
$file = "{$dirArray[$index]}";
$zip->addFile($file, $file);
}
// close the zip file
$zip->close();
?>
Upvotes: 0
Reputation: 17272
The ZipArchive methods indicate failure by returning false. Did you check that? Did you check getStatusString?
Upvotes: 1