Я был в этом некоторое время. Это действительно сработало один раз, а потом никогда. это просто не создает файл почтового индекса. Файл существует.
$zip = new ZipArchive();
$filename = "./test" . time() .".zip";
if ($zip->open($filename, ZIPARCHIVE::CREATE)!==TRUE) {
exit("cannot open <$filename>\n");
}
$thisdir = "$_SERVER[DOCUMENT_ROOT]/zip";
$zip->addFile($thisdir . "/trash-icon.png", "/gabage.png");
echo "numfiles: " . $zip->numFiles . "\n";
echo "status:" . $zip->status . "\n";
$zip->close();
Если я добавлю что-то вроде
$zip->addFromString("testfilephp.txt", "#1 This is a test string added as testfilephp.txt.\n");
он создает zip-файл с txt-файлом в нем ... но нет никакого другого типа существующего файла.