| 
<?php// Example. Zip all .html files in the current directory and send the file for Download.
 // Also adds a static text "Hello World!" to the file Hello.txt
 $fileDir = './';
 ob_start(); // This is only to show that ob_start can be called, however the buffer must be empty when sending.
 
 include_once("Zip.php");
 $fileTime = date("D, d M Y H:i:s T");
 
 $zip = new Zip();
 // Archive comments don't really support utf-8. Some tools detect and read it though.
 $zip->setComment("Example Zip file.\nАрхив Комментарий\nCreated on " . date('l jS \of F Y h:i:s A'));
 // A bit of russian (I hope), to test UTF-8 file names.
 $zip->addFile("Привет мир!", "Кириллица имя файла.txt");
 $zip->addFile("Привет мир!", "Привет мир. С комментарий к файлу.txt", 0, "Кириллица файл комментарий");
 $zip->addFile("Hello World!", "hello.txt");
 
 @$handle = opendir($fileDir);
 if ($handle) {
 /* This is the correct way to loop over the directory. */
 while (false !== ($file = readdir($handle))) {
 if (strpos($file, ".php") !== false) {
 $pathData = pathinfo($fileDir . $file);
 $fileName = $pathData['filename'];
 
 $zip->addFile(file_get_contents($fileDir . $file), $file, filectime($fileDir . $file), NULL, TRUE, Zip::getFileExtAttr($file));
 }
 }
 }
 
 // Add a directory, first recursively, then the same directory, but without recursion.
 // Naturally this requires you to change the path to ../test to point to a directory of your own.
 // $zip->addDirectoryContent("testData/test", "recursiveDir/test");
 // $zip->addDirectoryContent("testData/test", "recursiveDir/testFlat", FALSE);
 
 //$zip->sendZip("ZipExample1.zip");
 //$zip->sendZip("ZipExample1_€2,000.zip");
 $zip->sendZip("ZipExample1_€2,000.zip", "application/zip", "ZipExample1_€2,000_utf8.zip");
 ?>
 |