У меня есть простой фрагмент кода, который открывает новый zip-файл, добавляет файл и затем закрывает zip-файл.
Это код:
Код: Выделить всё
$zip_output_file = $target_dir . "helpZip" . $temp_zip_num.".zip";
$zip_file = new ZipArchive();
if ($zip_file->open($zip_output_file, ZIPARCHIVE::CREATE )!==TRUE) {
zuzz_error_log(1, "zuzz_export_help_page: cannot open ");
$zip_file = NULL;
}
if (file_exists($target_dir."/".$attachment)) {
$file_added = $zip_file->addFile($target_dir."/".$attachment, $attachment);
if (!$file_added) {
zuzz_error_log(1, "zuzz_add_image_to_zip: Zuzz Error: Error adding attachment file ".$target_dir."/".$attachment);
} else {
zuzz_error_log(1, "zuzz_add_image_to_zip: name index ".$zip_file->getNameIndex(0));
}
} else {
zuzz_error_log(1, "zuzz_add_image_to_zip: attachment file ".$target_dir."/".$attachment." does not exists");
}
Открытие не вызывает ошибку, а addFile и getNameIndex(0) не возвращает назначенное имя только что добавленного файла.
При закрытии возникла ошибка: ZipArchive::close() : Ошибка чтения: это каталог в ......
Подробнее здесь: https://stackoverflow.com/questions/798 ... -directory